У меня есть программа, которая должна генерировать факториал любого заданного числа n.Java Factorial с использованием GUI возвращает только первый вывод
Когда пользователь вводит число, выход является факториалом для каждого числа, введенного после этого в калькулятор. Код компилируется нормально, но калькулятор не будет вычислять какие-либо факториалы, кроме первого. Поскольку я не могу использовать рекурсию для решения этой проблемы, отправьте только ответы без использования рекурсии.
Вот код:
import javax.swing.JOptionPane;
public class Assignment7
{
public static void main(String[] args)
{
int number1;
int factorial = 1;
String message;
number1 = Integer.parseInt(JOptionPane.showInputDialog("Enter a positive integer that you would like factored (Type \"1\" to stop) : "));
for(int i = 1; i <= number1; i++)
{
factorial = factorial * i;
}
do
{
message = String.format("The factorial of %d is: %d", number1, factorial);
JOptionPane.showMessageDialog(null, message);
number1 = Integer.parseInt(JOptionPane.showInputDialog("Enter a positive integer that you would like factored (Type \"1\" to stop) : "));
}
while(number1 != 1);
}
}