Advertisement
u53r

Funzione fattoriale (implementazione ricorsiva)

Oct 24th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.79 KB | None | 0 0
  1. #include <stdio.h>
  2. int fact(int); // Prototipo della funzione fattoriale
  3.  
  4. int main() {
  5.   int x; // Numero di cui calcolare il fattoriale
  6.   printf("Inserisci il numero di cui vuoi calcolare il fattoriale --> ");
  7.   scanf("%d", &x);
  8.  
  9.   // Se viene inserito un numero negativo, chiedo che ne venga inserito un altro
  10.   while (x < 0) {
  11.     printf("Hai inserito un numero negativo, inseriscine un altro\n --> ");
  12.     scanf("%d", &x);
  13.   }
  14.  
  15.   // Calcolo del fattoriale e stampa del risultato
  16.   printf("Fattoriale di %d = %d\n",x,fact(x));
  17.   return 0;
  18. }
  19.  
  20. // Implementazione ricorsiva della funzione fattoriale
  21. int fact(int f){
  22.   if(f == 0){ // Se f è uguale a zero, restituisco 1
  23.     return 1;
  24.   }else{ // Se f è diverso da zero, restituisco f * fact(f-1)
  25.     return f*fact(f-1);
  26.   }
  27. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement