zoukankan      html  css  js  c++  java
  • 软件工程概论个人作业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;            

        }     

         }    

      }  

    }

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

    缺陷:

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

  • 相关阅读:
    快速幂
    三角函数与反三角函数的使用
    poj1050 dp动态规划
    归并排序算法
    KMP算法(查找子序列)
    hdu1233 继续畅通工程 (最小生成树——并查集)
    set<pair<int,int> > 的运用
    HDU 4513 吉哥系列故事――完美队形II (manacher算法)
    Codeforces Round #360 (Div. 2) C. NP-Hard Problem (BFS)
    Codeforces Round #357 (Div. 2) C.Heap Operations 优先队列 + 模拟
  • 原文地址:https://www.cnblogs.com/keaidejava/p/6516131.html
Copyright © 2011-2022 走看看