package com.mingcheng;
import java.util.Random;
import java.util.Scanner;
/**
*
* @author 某公司程序员二柱的小孩上了小学二年级,老师让家长每天出30道(100以内)四则运算题目给小学生做。
* 二柱立马就想到写一个小程序来做这件事。 这个事情可以用很多语言或者工具来实现:
*
*/
public class Calculate {
private static Scanner input = new Scanner(System.in);
public static void main(String[] agrs) {
int choose;
int right = 0;
int first = 0;
int last = 0;
int[] error = new int[30];
int[] errorId = new int[30];
int oper, j = 0, k = 0;
int result1 = 0;
int result2 = 0;
Random random = new Random();
while (true) {
System.out.print("是否进行运算: 1.是 2.否\n");
choose = input.nextInt();
if (choose == 1) {
System.out.println("请输入做题数目:");
int number = 0;
number = input.nextInt();
for (int i = 0; i < number; i++) {
Scanner input = new Scanner(System.in);
first = random.nextInt(100);
last = random.nextInt(100);
oper = random.nextInt(4);
switch (oper) {
case 0:
{
System.out.print(i + 1 + ". " + first + "+" + last + "=");
result1 = input.nextInt();
result2 = first + last;
if (result1 == result2)
right++;
else {
error[j] = result2;
errorId[k] = i + 1;
j++;
k++;
}
break;
}
case 1:
{
while (first < last) {
first = random.nextInt(100);
last = random.nextInt(100);
}
System.out.print(i + 1 + ". " + first + "-" + last + "=");
result1 = input.nextInt();
result2 = first - last;
if (result1 == result2)
right++;
else {
error[j] = result2;
errorId[k] = i + 1;
j++;
k++;
}
break;
}
case 2:
{
System.out.print(i + 1 + ". " + first + "*" + last + "=");
result1 = input.nextInt();
result2 = first * last;
if (result1 == result2)
right++;
else {
error[j] = result2;
errorId[k] = i + 1;
j++;
k++;
}
break;
}
case 3:
{
if (last == 0) {
last = random.nextInt(99) + 1;
}
while (first % last != 0) {
first = random.nextInt(100);
last = random.nextInt(99) + 1;
}
System.out.print(i + 1 + ". " + first + "/" + last + "=");
result1 = input.nextInt();
result2 = first / last;
if (result1 == result2)
right++;
else {
error[j] = result2;
errorId[k] = i + 1;
j++;
k++;
}
break;
}
}
}
System.out.print("你一共答对了" + right + "道题\n" + "其中错误的题和其正确答案为:\n");
for (int m = 0; m < j; m++) {
System.out.print(errorId[m] + ". " + error[m] + " ");
System.out.print("\n");
}
}
}
}
}
可生成加减乘除法,计算后提示出错的题和正确答案,以及正确题目数~~~