01: // la ricorsione: esempio fattoriale
02: #include<stdio.h>
03: #include<stdlib.h>
04: 
05: 
06: unsigned long long fact(unsigned long long n){
07: 
08:   printf("DEBUG: sono stata invocata con n=%llu\n", n);
09: 
10:   if(n==1 || n==0)
11:   {
12:     printf("DEBUG: restituisco 1\n");
13:     return 1;   // condizione di uscita
14:   }
15: 
16:   unsigned long long risultato = n*fact(n-1);
17:   printf("DEBUG: restituisco %llu\n", risultato);
18: 
19:   return risultato;
20: }
21: 
22: int main(int argc, char **argv){
23: 
24:   unsigned int x;
25: 
26:   printf("Inserisci un numero intero: ");
27:   scanf("%u", &x);
28: 
29:   printf("%u! vale %llu\n", x, fact(x));
30: 
31: 
32:   return 0;
33: }
34: 
35: 


Se avete commenti o osservaƶioni su questa pagina
mandate un messaggio di posta elettronica a bertoƶƶi@ce.unipr.it