(1)题目要求
1.题目避免重复;
2.可定制(数量/打印方式);
3. 输入大的数量值,测试一下系统是否崩溃,反向查找系统是否优化的余地;
4.定制操作数的个数;
5.定制是否有乘除法;
6.定制是否有括号(随机加入);
7.定制数值范围(确定操作数的取值范围);
代码:
package sizeyunsuan;
import java.util.*;
public class sizeyunsuan {
public static int[] randomCommon(int n,int min, int max) //生成随机数
{
int[] result = new int[n];
int count = 0;
while(count < n) {
int num = (int) (Math.random() * (max - min)) + min;
boolean flag = true;
for (int j = 0; j < n; j++) {
if(num == result[j]){
flag = false;
break;
}
}
if(flag){
result[count] = num;
count++;
}
}
return result;
}
public static char fh(int panduan) //生成随机运算符
{
Random r = new Random();
int yunsuanfu= r.nextInt(100);
char fh=' ';
if(panduan==1) //有乘除
{
switch(yunsuanfu%4)
{
case 0:fh='+';break;
case 1:fh='-';break;
case 2:fh='*';break;
case 3:fh='/';break;
}
}
else if(panduan==2) //无乘除
{
switch(yunsuanfu%2)
{
case 0:fh='+';break;
case 1:fh='-';break;
}
}
return fh;
}
public static void main(String[] args) {
System.out.println("请输入题目个数:");
Scanner input = new Scanner(System.in);
int num=input.nextInt();
System.out.println("请输入操作个数(1.两个 2.三个)");
int czs=input.nextInt();
System.out.println("请输入数值范围:");
int a=input.nextInt();
int b=input.nextInt();
if((b-a)<num*(czs+1)) //系统崩溃条件
{
System.out.println("系统崩溃!");
System.exit(0);
}
System.out.println("是否需要乘除运算(1.是 2.否)");
int cc=input.nextInt();
Random r = new Random();
int x,y,z;
if(czs==1) //操作数为2时
{
int []arr1 =randomCommon(num*2,a,b);
for(int i=0;i<num*2;i++)
{
x=arr1[i];
y=arr1[i+1];
i++;
System.out.println(""+x+fh(cc)+y+"=");
}
}
else if(czs==2) //操作数为3时
{
System.out.println("是否需要括号运算(1.是 2.否)");
int kh=input.nextInt();
int []arr2 =randomCommon(num*3,a,b);
for(int i=0;i<num*3;i++)
{
x=arr2[i];
y=arr2[i+1];
z=arr2[i+2];
i+=2;
if(kh==1) //随机加括号
{
int kuohao= r.nextInt(99);
switch(kuohao%2)
{
case 0:System.out.println("("+x+fh(cc)+y+")"+fh(cc)+z+"=");break;
case 1:System.out.println(""+x+fh(cc)+"("+y+fh(cc)+z+")=");break;
case 2:System.out.println(""+x+fh(cc)+y+fh(cc)+z+"=");break;
}
}
else if(kh==2) //无括号
{
System.out.println(""+x+fh(cc)+y+fh(cc)+z+"=");
}
}
}
}
}
标签:题目,参考,int,四则运算,System,println,fh,cc,out From: https://www.cnblogs.com/XiMenXve/p/16998606.html