软件工程个人作业01

设计思路:

1.生成两个随机数,因为要支持分数,设置随机数的范围为0~200,当随机数在0~99之间时,该随机数作为运算数输出。当随机数大于100时,由系统再次生成两个随机数组成分数,为了方便计算分子设置范围为0~20,分母设置范围为2~20

2.生成一个随机数作为符号,该随机数范围为1~4的整数,分别对应加减乘除。

3.判断生成的数是分数还是整数然后输出式子。

代码:

package 四则运算;

public class 四则运算 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        for(int i=0;i<30;i++)
        {
            int m=0,n=0,x=0,y=0;
            int a=(int)(Math.random()*200);//如果是0~99则输出整数;如果是100~199输出分数
            int b=(int)(Math.random()*200);
            int c=1+(int)(Math.random()*4);
            if(a>99)
            {
                m=(int)(Math.random()*20);
                n=2+(int)(Math.random()*18);
                }
            if(b>99)
            {
                x=(int)(Math.random()*20);
                y=2+(int)(Math.random()*18);
            }
            if(c==1)
                {
                    if(a>99&&b>99)System.out.println(m+"/"+n+" + "+x+"/"+y+" =");
                    if(a>99&&b<100)System.out.println(m+"/"+n+" + "+b+" =");
                    if(a<100&&b>99)System.out.println(a+" + "+x+"/"+y+" =");
                    if(a<100&&b<100)System.out.println(a+" + "+b+" =");
                }
            if(c==2)
                {
                    if(a>99&&b>99)System.out.println(m+"/"+n+" - "+x+"/"+y+" =");
                    if(a>99&&b<100)System.out.println(m+"/"+n+" - "+b+" =");
                    if(a<100&&b>99)System.out.println(a+" - "+x+"/"+y+" =");
                    if(a<100&&b<100)System.out.println(a+" - "+b+" =");
                    
                }
            if(c==3)
                {
                    if(a>99&&b>99)System.out.println(m+"/"+n+" × "+x+"/"+y+" =");
                    if(a>99&&b<100)System.out.println(m+"/"+n+" × "+b+" =");
                    if(a<100&&b>99)System.out.println(a+" × "+x+"/"+y+" =");
                    if(a<100&&b<100)System.out.println(a+" × "+b+" =");
                    
                }
            if(c==4)
                {
                    while(b==0)
                        b=(int)(Math.random()*100);
                    if(a>99&&b>99)System.out.println(m+"/"+n+" ÷ "+x+"/"+y+" =");
                    if(a>99&&b<100)System.out.println(m+"/"+n+" ÷ "+b+" =");
                    if(a<100&&b>99)System.out.println(a+" ÷ "+x+"/"+y+" =");
                    if(a<100&&b<100)System.out.println(a+" ÷ "+b+" =");
                }
        }

    }
    

}

课上未按时完成的原因:程序看似简单,却有很多细节需要注意,故在课上没有按时完成。

 

posted @ 2016-03-07 15:45  兔子只吃窝边草  阅读(172)  评论(1编辑  收藏  举报