fork download
  1. #include <stdio.h>
  2.  
  3. int fatorial(int num) {
  4. if (num >= 0) {
  5. int fat = 1;
  6. while (num > 0) {
  7. fat *= num;
  8. num--;
  9. }
  10. return fat;
  11. } else {
  12. return -1;
  13. }
  14. }
  15.  
  16. int main() {
  17. int num;
  18. printf("ESTE POGRAMA CALCULA N FATORIAL = N!\n");
  19. printf("Digite um valor para ser calculado: ");
  20. scanf("%d", &num);
  21. int fat = fatorial(num); //chama a função passado o que foi digitado e guarda em fat
  22. if (fat < 1) { //verifica se o retorno é menor que 1, se for indica erro
  23. printf("O calculo do fatorial se aplica somene aos numeros naturais.\n");
  24. } else { //se fat não for menor que um, então pode imprimir o resultado
  25. printf("\n\tO fatorial de %d = %d\n\n", num, fat);
  26. } //encerrou o bloco do if, só executa um dos dois blocos, nunca ambos
  27. }
  28.  
  29. //https://pt.stackoverflow.com/q/185619/101
Success #stdin #stdout 0s 4276KB
stdin
Standard input is empty
stdout
ESTE POGRAMA CALCULA N FATORIAL = N!
Digite um valor para ser calculado: O calculo do fatorial se aplica somene aos numeros naturais.