41 lines
1.1 KiB
C#
41 lines
1.1 KiB
C#
namespace fattoriale_moltiplicazione_for;
|
|
|
|
class Program
|
|
{
|
|
static void Main(string[] args)
|
|
{
|
|
//dichiarazione variabili
|
|
int i, num;
|
|
ulong fattoriale;
|
|
|
|
//inizio programma
|
|
//input e input sanitization
|
|
do{
|
|
Console.Write("Inserire un numero: ");
|
|
num=Convert.ToInt32(Console.ReadLine());
|
|
if(num<0){
|
|
Console.WriteLine("Il numero non può essere negativo");
|
|
}
|
|
else if(num>65){
|
|
Console.WriteLine("Il numero inserito è troppo grande");
|
|
}
|
|
}
|
|
while(num<0 || num>65);
|
|
//gestione caso 0
|
|
if (num==0){
|
|
fattoriale=1;
|
|
}
|
|
else{
|
|
fattoriale=Convert.ToUInt64(num);
|
|
//ciclo calcolo fattoriale
|
|
for(i=num-1; i>1; i--){
|
|
//calcolo fattoriale
|
|
fattoriale=fattoriale*Convert.ToUInt64(i);
|
|
}
|
|
}
|
|
//output finale
|
|
Console.Write("Il fattoriale di " +num);
|
|
Console.WriteLine(" è " +fattoriale);
|
|
}
|
|
}
|