Oppure

Loading
22/12/08 21:24
morpheus
salve h fatto un programma che mi calcoli il fatoriale di un numero n inserito dall'utente però in pratica se il numero è maggiore di 100 deve chiedere di reinserirlo ma mi sto incasinando perchè non riesco a fare un ciclo che lo chieda tante volte finchè non è minore. ecco il codice:
#include<iostream>
using namespace std;
int main()
{
int numero=0,fattoriale=1;

cout<<"Inserisci il numero:";
cin>>numero;
int x;
for(x=0; ;x++)
{
if(numero>100)
{
cout<<"inserire numero compreso tra 1 e 100";
}
else while(numero>1)
{fattoriale=fattoriale*numero;
numero=numero-1;
}
cout<<"fattoriale = "<<fattoriale<<endl;
}
system("pause";);
}

grazie.
aaa
23/12/08 16:21
manvb.net
Ecco il codice funzionante:
#include<iostream>
using namespace std;
int main()
{
int numero=0,fattoriale=1;
cout<<"Inserisci il numero:";
cin>>numero;
int x;
while (numero>100)
{
cout<<"inserire numero compreso tra 1 e 100:";
cin>>numero;
}
while(numero>1)
{
fattoriale=fattoriale*numero;
numero=numero-1;
}
cout<<"fattoriale = "<<fattoriale<<endl;
system("pause");
}


Il for non serve a niente in questo caso.
Conviene invece usare:

while (numero>100)
{
cout<<"inserire numero compreso tra 1 e 100:";
cin>>numero;
}
per verificare le dimensioni del numero.
Ultima modifica effettuata da manvb.net 23/12/08 16:22
aaa