【发布时间】:2016-09-04 18:43:08
【问题描述】:
我有以下简单的 Java 程序,它会提示用户进行减法测验。有人可以在正确的道路上推动我如何实现一个不断生成数字、进行计算、提示用户并提供反馈直到用户选择停止的循环吗?我想它会涉及一个while循环,但是用户如何表示他们想要停止?我知道我可以告诉他们“只要你想退出就按___”,但程序的其余部分会不断提示用户输入一个整数......那么如果他们选择输入一个退出键怎么办(假设“ Q") 当给他们下一个问题并且计算机正在等待一个整数的命令行响应时(因为 Q 不是整数)?
import java.util.Random;
import java.util.Scanner;
public class MathQuiz
{
public static void main( String [] args )
{
// random number generator
Random rng = new Random();
// scanner to get user's answer
Scanner scan = new Scanner( System.in );
// generates random number, 1 <= n <= 9
int num1 = rng.nextInt( 10 );
int num2 = rng.nextInt( 10 );
// prompt, answer, user's answer, and feedback
String prompt = "What is " + num1 + " - " + num2 + "?";
int answer = Math.abs( num1 - num2 );
int userAnswer = 0;
String feedback = "That's correct, way to go!";
// figure out which is larger
if( num1 < num2 )
{
prompt= "What is " + num2 + " - " + num1 + "?";
}
System.out.println( prompt );
userAnswer = scan.nextInt();
if( userAnswer != answer )
{
feedback = "That is incorrect.";
}
System.out.println( feedback );
}
}
【问题讨论】:
-
您可以通过将
main方法的内容包装到一个循环中来做到这一点。 More about while loops , And for loops -
除了Titus所说的,你可以检查用户是否输入了退出字符串(CTRL C、“exit”等),如果是则返回。
标签: java while-loop prompt