C ++ Fatorial

C ++ Fatorial
Fatorial de qualquer número é o produto de todos os números inteiros positivos. O fatorial é geralmente usado em misturas e variações. Números negativos não têm um fatorial. Por exemplo, 1 é uma fatorial de 0. O fatorial é indicado pelo símbolo '!'. Quando o usuário insere um número inteiro, todos os números devem ser multiplicados até esse número específico. O fatorial pode ser determinado usando loops "para". Quando inicializamos com 0, obtemos 0 no resultado e quando não inicializamos, obtemos a resposta correta, mas se uma variável mantiver um valor de lixo, não conseguimos obter a resposta certa. Então, sugere -se inicializar o fatorial com 1. Em C ++, existem inúmeros métodos para descobrir o fatorial de diferentes números inteiros. Vamos discutir dessa maneira. Para a execução de códigos, o dev c ++ é usado. Escrevemos os seguintes códigos nele e os executamos.

Determinar o fatorial de um número usando a recursão

Podemos obter o fatorial de qualquer número pelo uso do método de recursão. Neste exemplo, pegamos qualquer número do usuário e depois calculamos o fatorial desse número dado. Incluímos um arquivo de cabeçalho da seguinte maneira.

#incluir
usando namespace std;
int fatorial (int x);
int main ()

int x;
cout x;
cout << "Factorial of " << x << " = " < 1)
retornar x * fatorial (x - 1);
outro
retornar 1;

Suponha que inserimos o número "12" no programa conforme necessário, o método fatorial () leva esse número inteiro apenas como um argumento. Esta função multiplica 12 pelo fatorial de (12-1 = 11). Para fazer isso, o número "11" é transmitido ao método fatorial (). Da mesma forma, na próxima repetição, multiplique 11 pelo fatorial de (11-1 = 10). O método fatorial () é então dado 10 como um parâmetro. Este processo dura até que o valor se estenda 1 e retorne 1. Agora, toda função oferece um valor para calcular o fatorial que é revertido para a função principal ().

O usuário insere um número 12 e depois obtém o fatorial deste número.

Use para loop

Determinamos o fatorial de um número inteiro com a ajuda do loop "for". Vamos dar uma olhada no que está acontecendo no código abaixo. Incluímos o arquivo de cabeçalho no início. Depois disso, usamos o namespace std. Nós declaramos três variáveis. Variáveis ​​'a' e 'j' são do tipo de dados inteiro. Em seguida, utilizamos a função cout para obter um número inteiro positivo do usuário. Esse número inteiro é armazenado na variável 'a'. Aqui entramos o número '9'.

#incluir
usando namespace std;
int main ()

int a, j, fatorial = 1;
couta;
para (j = a; j> = 1; j--)
Fatorial = Fatorial*J;
cout<<"\nFactorial = "<cout<retornar 0;

Agora, depois de obter o número inteiro do usuário, a avaliação do loop "for" começará. O valor da variável 'a' (9) é inicializado com variável 'j'. Portanto, j = 9. A seção de inicialização do loop for é implementada primeiro, mas apenas uma vez. O estado j> = 1 ou 9> = 1 avalia para verdadeiro, de modo que o fluxo do programa entra em um loop e fatorial * j ou 1 * 9 ou 9 é inicializado para fatorial. O fluxo do programa vai para a terceira parte do loop e o valor de 'j' é diminuído. Portanto, j = 4. Condição j> = 1 é avaliado novamente. A condição é avaliada a cada vez e o valor de 'J' é atualizado. E após cada avaliação da condição, o programa dentro do loop é executado até que a condição avalie para false. Portanto, quando a condição é falsa, obtemos os valores 'J' e 'Fatorial' após cada avaliação. O valor de 'fatorial' é recuperado no final do loop. E isso resultará no fatorial do número especificado.

O usuário insere o número '9' e depois pressiona a tecla Enter para obter o fatorial de 9.

Use enquanto loop

Outro método para encontrar o valor fatorial é o uso de um loop de tempo. Neste código, incluímos o arquivo de cabeçalho . Tomamos a variável "M" como tendo um número inteiro de tipo de dados. Também aplicamos a condição "se". Ele retorna 1 se o valor de 'm' for equivalente a 0. Depois disso, tomamos mais variáveis. Precisamos inicializar essas variáveis ​​antes do while loop.

#incluir
usando namespace std;
não assinado int fatorial (int M. não assinado)

if (m == 0)
retornar 1;
int k = m, fatorial = 1;
enquanto (m / k != m)
Fatorial = Fatorial * K;
k--;

retornar fatorial;

int main ()

int n = 16;
cout << "Factorial of the number "
<< n<< " is "
<< factorial(n) << endl;
retornar 0;

Utilizamos a declaração no tempo para implementar uma estrutura iterativa quando as operações são desconhecidas, e a iteração dura até que a condição de teste se torne verdadeira. Uma vez que a declaração for implementada, o computador avalia primeiro a condição de teste fornecida. Se essa condição for verdadeira, o corpo do loop é implementado. Depois de executar o corpo do loop, a condição de teste é avaliada novamente e, se for verdade, o corpo do loop é executado mais uma vez. Este procedimento continua até que a condição de teste fornecida seja falsa. Se falso, o controle é transmitido para a primeira declaração após o final do corpo do loop. O corpo do loop contém apenas uma declaração ou várias declarações.

Em seguida, pegamos o número '16' para encontrar o fatorial. Este número é significado pela variável 'n'.

Depois de executar o código acima mencionado, obtemos o fatorial de 16 na saída.

Conclusão:

Este artigo explica as técnicas de encontrar o fatorial de um número. Nós multiplicamos todos os números inteiros não negativos que são menores ou equivalentes a esse número para obter o fatorial desse número. Para números não negativos, o fatorial é sempre determinado. Para obter o fatorial de números inteiros positivos, usamos o loop for e o loop while. Também utilizamos o método de recursão para esse fim.