首页 > 代码库 > 软件工程概论个人作业01
软件工程概论个人作业01
import java.util.Scanner;
public class sizeyunsuan {
String f()
{ int i=(int)(Math.random()*10);
int j=(int)(Math.random()*10);
if(i>=j) {
int temp=i;
i=j;
j=temp; }
return("("+i+"/"+j+")");
}
public static void main(String[] args)
{ String a,b;
int k;
sizeyunsuan lianxi=new sizeyunsuan();
System.out.println("请确定需要多少道题目:");
Scanner in=new Scanner(System.in);
int n; n=in.nextInt();//获取输入值
for(int d=0;d<n;d++) {
a=lianxi.f();
b=lianxi.f();
int i=(int)(Math.random()*100);
int j=(int)(Math.random()*100);
switch((int)(Math.random()*4))
{ case 0:
k=(int)(Math.random()*3);
if(k==0)
System.out.println(i+"+"+j+"=");
else if(k==1)
System.out.println(a+"+"+j+"=");
else if(k==2)
System.out.println(b+"+"+a+"=");
break;
case 1:
k=(int)(Math.random()*3);
if(i<j)
{
int temp=i;
i=j;
j=temp;
}
if(k==0)
System.out.println(i+"-"+j+"=");
else if(k==1)
System.out.println(j+"-"+a+"=");
else if(k==2)
System.out.println(b+"-"+a+"=");
break;
case 2:
k=(int)(Math.random()*3);
if(k==0)
System.out.println(i+"*"+j+"=");
else if(k==1)
System.out.println(a+"*"+j+"=");
else if(k==2)
System.out.println(b+"*"+a+"=");
break;
case 3:
while(j==0)
j= (int)(Math.random()*100);
System.out.println(i+"/"+j+"=");
break;
}
}
}
}
设计思想:不断产生随机数制造分数形式(比较两个数的大小,并进行交换,确保是真分数),再利用随机数确定运算符号,最后得出完整的四则运算式子
缺陷:
此程序不能严格保证运算式没有重复。
软件工程概论个人作业01