package chapter5;
import java.util.Scanner;
public class Exercise5 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int min = 1;
int max = 10;
int one = (int) (Math.random() * (max - min)) + min;
int two = (int) (Math.random() * (max - min)) + min;
int num = (int) (4* Math.random()+1);
char operator = 0;
switch (num)
{
case 1: operator = '+';
break;
case 2: operator = '-';
break;
case 3: operator = '*';
break;
case 4: operator = '/';
break;
}
System.out.println("What is " + one + " " + operator + " " + two + "?");
double ans = 0;
double ans1 = 0;
ans = input.nextDouble();
if (num == 1) {
ans1 = one + two;
} else {
if (num == 2) {
ans1 = one - two;
} else {
if (num == 3 ) {
ans1 = one * two;
} else {
if (num == 4) {
ans1 = one / two;
}
}
}
if (ans == ans1) {
System.out.println("Correct!");
} else {
if (ans != ans1) {
System.out.println("incorrect");
}
}
}
}
}
所以我试图创建一个应用程序来生成一个问题,并计算您的输入是否正确或不正确,到目前为止,从我的所有测试来看,当它正确时,它会显示正确的内容,但当它不正确时,应用程序将终止。
最佳答案
我稍微清理了你的代码,但无论如何它似乎都运行良好。也许您应该检查编辑器设置,看看程序执行完毕后输出控制台是否未清除。
package chapter5;
import java.util.Scanner;
public class Excercise5 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int min = 1;
int max = 10;
int one = (int) (Math.random() * (max - min)) + min;
int two = (int) (Math.random() * (max - min)) + min;
int num = (int) (4 * Math.random());
char operator = "+-/*".charAt(num);
System.out.println("What is " + one + " " + operator + " " + two + "?");
double ans = 0;
double ans1 = 0;
ans = input.nextDouble();
switch(num) {
case 0:
ans1 = one + two;
break;
case 1:
ans1 = one - two;
break;
case 2:
ans1 = one / two;
break;
case 3:
ans1 = one * two;
break;
}
if (ans == ans1) {
System.out.println("Correct!");
} else {
System.out.println("Incorrect");
}
}
}
关于java - 数学导师程序无法显示 "incorrect",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37558453/