Salve a tutti! ho implementato questo piccolo programmino per il fattoriale in c++ e sono tanto felice che funzioni!
solo che verificandolo mi da risultati corretti solo fino a 10! qualcuno saprebbe aiutarmi a capire come potrei ottimizzarlo fino a un numero più alto e perchè si presenta questo problema??
vi incollo qui il codice:
*/fattoriale/*
#include <iostream>
using namespace std;
int main()
{ int i,n,f; f=1; i=1;
cout<<"inserire il numero per calcolarne il fattoriale"<<endl;
cin>>n;
if(n>=0)
{
if(n>0)
while(i<n)
{
f=f*(i+1);
i++;
}
else f=1;
}
else f=-1;
cout<<"il fattoriale del numero e':";
cout<<f<<endl;
cout<<"se il risultato del fattoriale è -1"<<endl;
cout<<"si è inserito un numero negativo del quale"<<endl;
cout<<"non e' possibile calcolarne il fattoriale"<<endl;
}