O fatorial de um número é o produto de todos os inteiros descendentes positivos. O fato-rial de n é denotado por n! (n fatorial).
Por exemplo:
4! = 4 * 3 * 2 * 1 = 24
6! = 6 * 5 * 4 * 3 * 2 * 1 = 720
Aqui, 4! é pronunciado como "4 fatorial". O fatorial é normalmente usado em combinações e permutações (matemática).
Existem muitas maneiras de escrever um programa de fatorial em C++. Vamos ver as duas maneiras de escrever um programa fatorial.
Programa fatorial usando loop.
Programa fatorial usando recursão.
Exemplo de Fatorial usando Loop
Vejamos um exemplo de um programa fatorial usando “loop”:
1. #include <iostream>
2. using namespace std;
3. int main ()
4. {
5. int i, fator = 1, numero;
6. cout << "Digite um número qualquer: ";
7. cin >> numero;
8. for (i = 1; i <= numero; i ++) {
9. fator = fator * i;
10. }
11. cout << "O Fatorial de" << numero << "é: " << fator << endl;
12. return 0;
13. }
Resultado:
Digite qualquer número: 5.
O Fatorial de 5 é: 120.
*****
Programa fatorial usando recursão
Vejamos agora um exemplo de fatorial usando recursão:
1. #include <iostream>
2. using namespace std;
3. int main ()
4. {
5. int fatorial (int);
6. int fator, valor;
7. cout << "Digite um número qualquer: ";
8. cin >> valor;
9. fator = fatorial (valor);
10. cout << "O fatorial do número é:" << fator << endl;
11. return 0;
12. }
13. int fatorial (int n)
14. {
15. if (n <0)
16. return (-1); /*Valor errado*/
17. if (n == 0)
18. return (1); /* Condição de terminação */
19. else
20. {
21. return (n * fatorial (n-1));
22. }
23. }
Resultado:
Digite um número qualquer: 6.
O fatorial do número é: 720.
|