【发布时间】:2020-09-13 19:30:07
【问题描述】:
Java 新手,学习如何使用 While 循环和随机生成器。这将打印一个乘法问题。每次用户回答错误的问题时,它都应该打印相同的问题。相反,它退出程序。我该怎么办?
while (true) {
Random multiply = new Random();
int num1 = multiply.nextInt(15);
int num2 = multiply.nextInt(15);
int output = num1 * num2;
System.out.println("What is the answer to " + num1 + " * " + num2);
Scanner input = new Scanner(System.in);
int answer = input.nextInt();
if (answer == output) {
if (answer != -1)
System.out.println("Very good!");
} else {
System.out.println("That is incorrect, please try again.");
}
}
【问题讨论】:
-
你应该打破不正确答案的循环,比如
if(answer == output){System.out.println("Very good!");} else {System.out.println("That is incorrect");break;} -
编辑后问题的上下文略有变化,但当我运行它时它仍然不只是退出。
-
对不起,我问错了问题,今天已经很长了。我真正需要发生的是,如果用户输入错误的答案,循环再次询问相同的问题,它应该打印“不正确,再试一次”,然后允许用户回答相同的问题,而不是打印新的问题直到正确回答该问题。
-
然后继续在循环中输入输入,如果正确则中断,如
while(true){int answer = input.nextInt();if(answer == output){System.out.println("Very good!");break;} else {System.out.println("That is incorrect");}}
标签: java random while-loop