Ich versuche, einen Teil eines Programms zu schreiben, das faktorials mit Schleifen berechnet. Ich habe keine Fehlermeldungen, aber ich bekomme keine Ausgabe.Wie faktoriell mit Loops in Java zu berechnen
Gibt es Vorschläge für meinen Ansatz oder gibt es einen besseren Ansatz mit Schleifen? Vielen Dank!
import java.util.Scanner;
public class Factorial {
public static void main(String[] args) {
System.out.print("Enter a non-negative number that you wish to perform a factorial function on: ");
//Create scanner object for reading user input
Scanner input = new Scanner(System.in);
//Declare variables
int number = input.nextInt();
int factTotal = 1;
//Execute factorial
do{
factTotal = factTotal * number;
number--;
while (number >= 1);
}
while (number <= 0);{
System.out.println("That's not a positive integer!");
}
System.out.print(factTotal);
}
}
* "Ich habe keine Fehlermeldungen, aber ich bekomme keine Ausgabe." * - Verwenden Sie einen Debugger! –
'while (Zahl> = 1);' ist dasselbe wie 'while (Zahl> = 1) {/ * tue nichts * /}' und wird für immer ausgeführt. – Andreas
Da faktorielle Berechnung bedeutet, positive Zahlen zu multiplizieren, was soll 'while (number <= 0) tun? Looping während 'number' negativ ist, scheint in diesem Code keinen Platz zu haben. – Andreas