Perché la funzione restituisce valori corretti del fattoriale solo fino a x<=16?codice:int factorial(int x){ x=floor(x); if(x>=0) { if((x==0) || (x==1)) return 1; else return (x*factorial(x-1)); /* oppure: int result=1; for(int i=2;i<=x;i++) result=result*i; return result; */ }else{ return 0; } } // ... printf("%d",factorial(17)); }

Rispondi quotando
