Algorithme qui calcule le factoriel
Bonjour à tous,
Voulant apprendre le codage avec Java, j'effectue plusieurs exercices "simples" pour m'initier.
Dans ce programme, j'essaye de calcul le factoriel.
Cependant, quelque soit le chiffre inscrit (sauf 0), il me retourne 1..
J'imagine que l'erreur provient de ma boucle "for" mais je n'arrive pas à voir d'où ça vient.
avant de coder, j'ai testé mon algorithme sur Algobox, qui fonctionne pourtant bien.
Pourriez-vous m'aiguiller je vous prie ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| import java.util.Scanner;
public class Factoriel
{
public static void main(String[] args)
{
int iteration = 1;
int factoriel;
int saisieClavier;
System.out.print("Veuillez indiquer le nombre/chiffre à factoriser : ");
try(Scanner clavier = new Scanner (System.in))
{
saisieClavier = clavier.nextInt();
if(saisieClavier == 0)
{
System.out.print("Le factoriel de 0 est 1");
}
else
{
for(factoriel=1;factoriel == saisieClavier;factoriel++)
{
iteration *= factoriel;
}
}
}
System.out.print("Le factoriel de " + saisieClavier + " est " + iteration);
}
} |