Programa Java para Fatorial

Programa Java para Fatorial

Ao lidar com problemas matemáticos em Java, pode haver casos em que o programador precisa recuperar um resultado com base na sucessão de valores. Por exemplo, multiplicar a sucessão de valores em vez de calcular cada um dos valores individualmente. Em tais cenários, retornando o “fatorial”Do número é útil em muitos casos para reduzir a complexidade do código.

Este artigo elaborará as abordagens para calcular o "fatorial" de um número em Java.

Como calcular o fatorial de um número em java?

Para calcular o fatorial de um número em Java, aplique as seguintes abordagens:

    • ““para" Laço
    • ““enquanto" Laço
    • ““Recursão" Abordagem

Algoritmo para calcular o "fatorial" de um número

Primeiro de tudo, vamos implementar um algoritmo para encontrar o “fatorial”De um número. Por exemplo, se o fatorial do número “5”Precisa ser calculado, o cálculo correspondente pode ser feito, como segue:

5 -> 5 * 4 * 3 * 2 * 1 = 120;

Abordagem 1: Computando o fatorial de um número em Java usando o loop "para"

O "para”O loop é usado para iterar através dos valores e exibi -los individualmente. Esta abordagem pode ser utilizada para iterar o loop de “1”Para o número (calculado para fatorial) e retornar sua multiplicação.

Exemplo

Passe pelo exemplo a seguir:

classe pública Fatorial
public static void main (string args [])
INT número = 5;
int fatorial = 1;
para (int i = 1; i <= number; ++i)
fatorial *= i;

Sistema.fora.println ("O fatorial de"+número+"é:"+fatorial);


De acordo com o snippet de código acima, aplique as seguintes etapas:

    • Em primeiro lugar, inicialize os números inteiros declarados.
    • Depois disso, aplique um “para”Faça um loop para iterar de“1”Para o número cujo fatorial precisa ser calculado.
    • Na definição de loop, retorne a multiplicação dos números inteiros sucessivos a partir de “1”Até o número.
    • Por fim, exiba o fatorial correspondente do número.

Saída


Nesta saída, pode -se analisar que o fatorial do número correspondente é retornado.

Lógica alternativa

Como alternativa, o fatorial pode ser calculado simplesmente revertendo o “para”Logic em loop no exemplo acima, como segue:

for (int i = número; i> = 1; --i)
fatorial *= i;


Aqui, ele realiza a iteração reversa, eu.e., a partir do número (a ser calculado para fatorial) até “1”E retornando o fatorial.

Saída


Como observado, o resultado também é idêntico neste caso.

Abordagem 2: Computando o fatorial de um número em Java usando o loop “while”

O "enquanto”O loop é utilizado para iterar infinitamente. Este loop pode ser aplicado a, da mesma forma, iterar ao longo dos valores que começam de “1Até o número (calculado para fatorial) e multiplicando -os.

Exemplo

O exemplo fornecido abaixo explica o conceito declarado:

classe pública Fatorial
public static void main (string args [])
INT número = 5;
int fatorial = 1;
int x = 1;
enquanto (x<=number)
fatorial *= x;
x ++;

Sistema.fora.println ("O fatorial de"+número+"é:"+fatorial);


Nas linhas acima do código:

    • Da mesma forma, inicialize os números inteiros declarados.
    • Agora, aplique o “enquanto”Faça um loop para iterar de“1Até o número a ser calculado para fatorial.
    • Na definição de loop, multiplique os números inteiros iterados um por um, incrementando -os considerando a condição especificada.

Saída


Conforme indicado, esse resultado produziu o cálculo correto.

Abordagem 3: Computando o fatorial de um número em Java usando “Recursão”

““Recursão”Em Java é um processo em que um método se chama continuamente. Essa abordagem pode ser aplicada levando um número de entrada do usuário e calculando -o para fatorial, invocando a função repetidamente dentro da mesma função.

Em primeiro lugar, inclua o pacote abaixo do goleiro antes de ir para o exemplo para garantir a entrada do usuário:

importar java.util.Scanner;


Exemplo

Agora, vamos considerar o seguinte exemplo:

classe pública FatorialRecursion
estático int fatorial (int n)
if (n == 0)
retornar 1;
outro
return (n * fatorial (n-1));

public static void main (string args [])
Scanner Obj = novo scanner (sistema.em);
Sistema.fora.println ("Digite o número:");
int num = obj.nextInt ();
Sistema.fora.println ("O fatorial se torna:"+fatorial (num));
obj.fechar();


De acordo com este código:

    • Defina uma função chamada “fatorial()”.
    • O parâmetro de função corresponde ao número a ser avaliado para fatorial.
    • Na sua definição (função), retorne “1"No caso de o número ser"0"Através do"se" declaração.
    • Caso contrário, invocar a mesma função em que é definida e multiplique o número aprovado com todos os seus sucessores consecutivos menos do que até “1”.
    • No "principal()”Método, crie um“Scanner“Objeto usando o“novo"Palavra -chave e a"Scanner ()”Construtor, respectivamente.
    • O "Sistema.em”O parâmetro lê a entrada e o“NextInt ()”O método leva a entrada do usuário como números inteiros.
    • Por fim, invoco o “recursivo”Funciona e passe a entrada do usuário inteiro como seu argumento que precisa ser calculado para fatorial.

Saída



Esta saída significa que o resultado desejado é recuperado.

Conclusão

Para calcular o “fatorial"De um número em Java, aplique o"para”Loop, o“enquanto”Loop, ou o“Recursão" abordagem. As duas abordagens anteriores retornam o fatorial ao iterando de “1”Para o número inteiro fornecido e multiplicar os valores iterados. A última abordagem calcula o fatorial de modo que a função se acessa repetidamente. Este blog calcula o fatorial do número de entrada especificado ou do usuário em java.