目标:编写一个简单四则运算随机生成器,并进行初步筛选。实现:
1. 能自行设置生成的题目数
2. 能设置简单排版,即每行显示的题目数
3. 剔除掉除法运算中除数为0以及结果为非正数的式子
4. 剔除掉减法运算中结果为负数的式子
代码:
import java.util.Scanner;
public class Four_arithmetic {
public static void main(String[] args) {
// 功能:供教师使用的简单四则运算自动出题器,每次出题数目和每行题目数可设置
// 1.设置题目数量
System.out.println("请输入题目数量:");
Scanner in = new Scanner(System.in);
int count = in.nextInt();
// 2.设置题目格式
System.out.println("请输入每行的题目数:");
int line = in.nextInt();
// 3.生成题目
int n = 0;
while(count > 0) {
String str = formulas();
System.out.print(str);
count--;
n++;
if(n % line == 0)
System.out.print("\n");
}
in.close();
}
public static String formulas() {
char[] operators = {'+', '-', '*', '/'};
char operator;
int num1 = (int) (Math.random()*100);
int num2;
// 剔除除法运算中除数为0和结果为非正数的运算、减法运算中结果为负数的运算
do {
num2 = (int) (Math.random()*100);
operator = operators[(int)(Math.random()*4)];
}while((operator == '/' && (num2 == 0 || num2 > num1) || (operator == '-' && num2 > num1)));
String str = String.valueOf(num1)+" "+operator+" "+ String.valueOf(num2)+" = \t";
return (str);
}
}