软件工程概论作业01

  三十到随机计算题:

  1:设计思路:首先用六个随机数组分别表示要进行计算的两个两位数,计算符号,判断是否有假分数计算,两个假分数分子是分母的倍数,然后用一个for循环,用随机数函数产生随机数,分别列出各种情况下所要进行的计算,再输出,这样就能做出一个三十道随机计算题的程序。

  1:源程序代码:

复制代码
package demo;

import java.util.Random;

public class show {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        int i=0;
        
            int []x=new  int[30];
            
            int []y=new  int[30];
            
            int []z=new  int[30];
            
            int []m=new  int[30];
            
            int []a=new  int[30];
            
            int []b=new  int[30];
            
        for(i=0;i<30;i++)
            {

            
                x[i]=new Random().nextInt(100);
            
                y[i]=new Random().nextInt(100);
            
                z[i]=new Random().nextInt(4);
            
                m[i]=new Random().nextInt(3);
            
                a[i]=new Random().nextInt(5);
             
                b[i]=new Random().nextInt(5);
                 
             if(z[i]==0&&(m[i]==0||m[i]==1))
                     
                 System.out.println(i+1+": "+x[i]+"+"+y[i]+"=");
                 
                 else if(z[i]==0&&m[i]==2)
                     
                 {
                     while(a[i]==0||b[i]==0)
                         
                     {
                         a[i]=new Random().nextInt(5);
                     
                         b[i]=new Random().nextInt(5);
                     }
                         
                         System.out.println(i+1+": "+"("+x[i]*a[i]+"/"+x[i]+")"+"+"+"("+y[i]*b[i]+"/"+y[i]+")"+"=");
                 }
                 
             else if(z[i]==1&&(m[i]==0||m[i]==1)) 
                         
                 {
                     if(x[i]>y[i])
                                 
                         System.out.println(i+1+": "+x[i]+"-"+y[i]+"=");
                             
                     else System.out.println(i+1+": "+y[i]+"-"+x[i]+"=");
            
                 }
                 else if(z[i]==1&&m[i]==2)
                    
                     {
                     while(a[i]==0||b[i]==0)
                         
                     {
                         a[i]=new Random().nextInt(5);
                     
                         b[i]=new Random().nextInt(5);
                     }
                    
                         if(x[i]>y[i])
                        
                             System.out.println(i+1+": "+"("+x[i]*a[i]+"/"+x[i]+")"+"-"+"("+y[i]*b[i]+"/"+y[i]+")"+"=");
                    
                         else System.out.println(i+1+": "+"("+y[i]*b[i]+"/"+y[i]+")"+"-"+"("+x[i]*a[i]+"/"+x[i]+")"+"=");
                    
                     }
             else if(z[i]==2&&(m[i]==0||m[i]==1))
                     
                 System.out.println(i+1+": "+x[i]+"*"+y[i]+"=");
                 
                 else if(z[i]==2&&m[i]==2)
                 {
                     
                     while(a[i]==0||b[i]==0)
                         
                     {
                         a[i]=new Random().nextInt(5);
                     
                         b[i]=new Random().nextInt(5);
                     }
                    
                     System.out.println(i+1+": "+"("+x[i]*a[i]+"/"+x[i]+")"+"*"+"("+y[i]*b[i]+"/"+y[i]+")"+"=");
                 }
                 
             else if(z[i]==3&&(m[i]==0||m[i]==1))
                
                 { 
                     while(y[i]==0||b[i]==0|a[i]==0) 
                         {
                             y[i]=new Random().nextInt(100);
                
                             a[i]=new Random().nextInt(10);
                    
                             b[i]=new Random().nextInt(10);
                         }
                     System.out.println(i+1+": "+x[i]+"/"+y[i]+"=");
                 }
                 else if(z[i]==3&&m[i]==2)
                 { 
                     while(y[i]==0||b[i]==0||a[i]==0) 
                         {
                             y[i]=new Random().nextInt(100);
                    
                             a[i]=new Random().nextInt(10);
                    
                             b[i]=new Random().nextInt(10);
                         }
                     System.out.println(i+1+": "+"("+x[i]*a[i]+"/"+x[i]+")"+"/"+"("+y[i]*b[i]+"/"+y[i]+")"+"=");
                 }
    
            }

    }

}
复制代码

 

  运行结果截图:

  

  上课未按时完成原因:上课没有带电脑,有些细节的方面考虑的不太完整,只是一些粗略的想法,假分数部分考虑的不完善。

posted @   牙吃多了糖疼  阅读(147)  评论(2编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示