package test;
import java.util.Random;
import java.util.Scanner;
class Numbers{
int a;
int b;
int c;
char d;
int result;
static Random r=new Random();//省内存
Numbers(int max){
this.a=r.nextInt(max);
this.b=r.nextInt(max);
this.c=r.nextInt(4);
switch (c) {
case 0:
d = '+';
result = a + b;
break;
case 1:
d = '-';
if (a < b) {
Numbers.temp(this);
}
result = a - b;
break;
case 2:
d = '*';
result = a * b;
break;
case 3:
d = '/';
if (a < b ) {
Numbers.temp(this);
}
if(b==0){
b=1;
}
result=a/b;
a=result*b;
break;
}
}
public static void temp(Numbers n){
int t=n.a;
n.a=n.b;
n.b=t;
}
}
public class problem {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请用数字输入你的年级:");
Scanner s = new Scanner(System.in);
int grade = s.nextInt();
System.out.println("准备好开始作答:");
switch (grade) {
case 1:
deal(10); break;
case 2:
deal(20); break;
case 3:
deal(100); break;
}
}
static void deal(int max) {
int i = 0;
while (true) {
i++;
Numbers n=new Numbers(max);
System.out.println(" " + n.a + n.d + n.b + "= ");//不加" ",会被认为a+b的和
float input;
Scanner scan = new Scanner(System.in);
input = scan.nextInt();
while (input != n.result) {
System.out.println("回答错误,请重新作答");
System.out.println(" " + n.a + n.d + n.b + "= ");
input = scan.nextFloat();
}
if (i % 5 == 0) {
System.out.println("恭喜你,已经答对 " + i + " 道题了!!!");
}
}
}
}
算术练习题(java)
最新推荐文章于 2024-05-25 22:49:47 发布