软件工程概论个人作业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;            

    }     

     }    

  }  

}

 设计思想:不断产生随机数制造分数形式(比较两个数的大小,并进行交换,确保是真分数),再利用随机数确定运算符号,最后得出完整的四则运算式子

缺陷:

此程序不能严格保证运算式没有重复。

原文地址:https://www.cnblogs.com/keaidejava/p/6516131.html