Java随机⽣成加减乘除运算,并记录结果题⽬描述
从键盘输⼊⼀个整数n,⽣成n个两位数的加减法运算,要求从键盘录⼊结果。
判断是否正确?最后⽣成成绩统计结果,列出标准答案
输⼊要做的题⽬的数量:3
1+5=?
输⼊答案:7
2+3=?
输⼊答案:5
5-6=?
输⼊答案:2
你答对了1道题,答错了2道题
1+5=6,你的回答是7,错误
2+3=5,你的回答是5,正确
5-6=-1,你的回答是2,错误
+,-,*,/
0,1,2,3
*/
描述:参与运算的数字是随机⽣成的100以内的整数,运算的类型如:加减乘除都是随机⽣成的,利⽤随机数默认:0代表加运算,1是减运算,2是乘运算,3是除运算
注:对⾯向对象不太属性,这⾥采⽤了c中的⾯向过程思想
实现代码:
public class HM2 {
static Scanner scanner =new Scanner(System.in);
public static void main(String[] args){
int n =0;
int a, b;
int sum =0;
System.out.println("输⼊要做的题⽬的数量:");
n = Int();
int[] op =new int[n];
int[] s =new int[n];
int[] result =new int[n];
String[] questions =new String[n];
for(int i =0; i < n; i++){
op[i]=(int)(Math.random()*4);// 运算符
a =(int)(Math.random()*89)+10;// 数a
b =(int)(Math.random()*89)+10;// 数b
System.out.println(a +getOp(op[i])+ b +"=?");
System.out.println("输⼊答案:");
s[i]= Int();// 输⼊的答案
result[i]=jisuan(a, b, op[i]);// 正确答案
if(s[i]== result[i]){
sum++;
}
questions[i]= a +getOp(op[i])+ b +"="+ result[i];
}
// 最后的输出
System.out.println("你答对了"+ sum +"道题,答错了"+(n - sum)+"道题");
for(int i =0; i < n; i++){
System.out.print(questions[i]);
if(s[i]== result[i]){
System.out.println(",你的回答是"+ s[i]+",正确");
}else{
java生成随机数的方法System.out.println(",你的回答是"+ s[i]+",错误");
}
}
}
// 获取运算符
private static String getOp(int index){
String string ="";
switch(index){
case0:
string ="+";
break;
case1:
string ="-";
break;
case2:
string ="*";
break;
case3:
string ="/";
break;
}
return string;
}
// 计算答案
private static int jisuan(int a,int b,int index){ int sum =0;
switch(index){
case0:
sum = a + b;
break;
case1:
sum = a - b;
break;
case2:
sum = a * b;
break;
case3:
sum = a / b;
break;
}
return sum;
}
}
结果: