随机选择一个响应java



只要答案正确,该程序就必须随机选择一个响应。如果答案是错误的,他会再次问同样的问题。

我的代码是这样的。

Scanner reader = new Scanner(System.in);

int response = 0;
int answer = 0;


while (true) {
int num1 = (int) (Math.random() * 10 +1); 
int num2 = (int) (Math.random() * 10 + 1);


if (num1 < num2) {
int temp = num1;
num1 = num2;
num2 = temp;
}

System.out.println("What is " + num1 + " times " + num2 + "?");
answer = reader.nextInt();
switch(response) {
case 0:
if (answer != (num1 * num2)) {
System.out.println("No. Please try again.");
System.out.println("What is " + num1 + " times " + num2 + "?");
answer = reader.nextInt();
}
if (answer == (num1 * num2)) {
System.out.println("Very good.");
}
case 1:
if (answer != (num1 * num2)) {
System.out.println("No. Please try again.");
System.out.println("What is " + num1 + " times " + num2 + "?");
answer = reader.nextInt();
}
if (answer == (num1 * num2)) {
System.out.println("Very good.");
}

任务是";使用随机数生成从1到4中选择一个数字,该数字将用于从每个正确或不正确答案的四个适当答案中选择一。使用switch语句发布响应">

我尝试过的代码中的问题是,它不会在我的switch case语句中随机选择一个响应,有什么想法吗?

您没有给response分配随机数,您只是用0初始化它。相反,你需要给它分配一个随机数:

Random r = new Random();
int response = r.nextInt(4) + 1;

最新更新