设计思想:
首先要用两个随机整数rand1、rand2的函数分别代表第一个数、第二个数以及用0-3的随机数rand3代表着四个不同运算符号,通过在for循环中对rand3的判断分为加减乘除进行不同的输出。另外在分数运算中要注意判断分子分母的大小问题,真分数输出,假分数直接让定制题量++,即可保证符合真分数的题达到定制题量。
源代码 :
//随机运算
//HanZhao 2017.3.4import java.util.*;public class test {
public static void main(String[] args) {
// TODO 自动生成的方法存根 System.out.println("请输入定制题的数量:"); Scanner a=new Scanner(System.in); int b=a.nextInt(); System.out.println("1、整数运算"); System.out.println("2、分数运算"); System.out.println("请输入你的选择:"); Scanner c=new Scanner(System.in); int d=c.nextInt(); String[] m=new String[b]; String[] n=new String[b]; if(d==1) { for(int i=0;i<b;i++) { int x=(int) (Math.random()*100); int y=(int) (Math.random()*100); int z=(int) (Math.random()*4); int j=0; m[j]=new String(); if(z==0) System.out.println(x+"/"+y+"="); m[j]=x+"/"+y+"="; if(z==1) System.out.println(x+"-"+y+"="); m[j]=x+"-"+y+"="; if(z==2) System.out.println(x+"*"+y+"="); m[j]=x+"*"+y+"="; if(z==3) System.out.println(x+"+"+y+"="); m[j]=x+"+"+y+"="; } } if(d==2) { for(int i=0;i<b;i++) { int x1=(int) (Math.random()*100); int y1=(int) (Math.random()*100); int x2=(int) (Math.random()*100); int y2=(int) (Math.random()*100); int z=(int) (Math.random()*4); if(x1>y1||x2>y2) { b++; } else { if(z==0) System.out.println("("+x1+"/"+y1+")+"+"("+x2+"/"+y2+")="); if(z==1) System.out.println("("+x1+"/"+y1+")-"+"("+x2+"/"+y2+")="); if(z==2) System.out.println("("+x1+"/"+y1+")*"+"("+x2+"/"+y2+")="); if(z==3) System.out.println("("+x1+"/"+y1+")/"+"("+x2+"/"+y2+")="); } } }}
}
上课未完成原因:
随机函数的使用错误,没有强制转换类型