zoukankan      html  css  js  c++  java
  • 软件工程个人作业01

    1.设计思想

    ① 先设定几个随机数来分别代表第一个和第二个分数的分子和分母,在设定两个整型变量来存放结果的分子和分母,在设定一个计数器来记录次数,最高到30,再设定一个随机数从0-3,分别代表四种运算符号;

    ② 之后判断两个分母,若有0或不能成为真分数,则跳过此次循环,重新随机,否则则进行下一步骤;

    ③ 判断运算符号,用if语句来决定不同的计算方法,并且输出。

    ④ 等到进行完30次循环后,程序结束。

    2.源程序代码

      1 public class PrimaryCalculate
      2 {
      3     public static void main(String args[])
      4     {
      5         for(int time=1;time<=30;)
      6         {
      7             int one=(int)(Math.random()*101);
      8             int two=(int)(Math.random()*101);
      9             int three=(int)(Math.random()*101);
     10             int four=(int)(Math.random()*101);
     11             int symbol=(int)(Math.random()*4);
     12             int five;
     13             int six;
     14 
     15             if(two==0||four==0||one>two||three>four)
     16             {
     17                 continue;
     18             }
     19             
     20             if(symbol==0)
     21             {
     22                 if(two>four)
     23                 {
     24                     for(int i=two;;i++)
     25                     {
     26                         if(i%two==0&&i%four==0)
     27                         {
     28                             six=i;
     29                             one=six/two+one;
     30                             three=six/four+three;
     31                             break;
     32                         }    
     33                     }
     34                 }
     35                 else if(two<four)
     36                 {
     37                     for(int i=four;;i++)
     38                     {
     39                         if(i%two==0&&i%four==0)
     40                         {
     41                             six=i;
     42                             one=six/two+one;
     43                             three=six/four+three;
     44                             break;
     45                         }
     46                     }
     47                 }
     48                 else
     49                 {
     50                     six=two;
     51                 }
     52                 
     53                 five=one+three;
     54                 
     55                 if(five==0)
     56                 {
     57                     System.out.println(one+"/"+two+" + "+three+"/"+four+" = "+"0");
     58                 }
     59                 else if(five>six)
     60                 {
     61                     for(int j=six;;j--)
     62                     {
     63                         if(five%j==0&&six%j==0)
     64                         {
     65                             five=five/j;
     66                             six=six/j;
     67                             break;
     68                         }
     69                     }
     70                     System.out.println(one+"/"+two+" + "+three+"/"+four+" = "+five+"/"+six);
     71                 }
     72                 else if(five<six)
     73                 {
     74                     for(int j=five;;j--)
     75                     {
     76                         if(five%j==0&&six%j==0)
     77                         {
     78                             five=five/j;
     79                             six=six/j;
     80                             break;
     81                         }
     82                     }
     83                     System.out.println(one+"/"+two+" + "+three+"/"+four+" = "+five+"/"+six);
     84                 }
     85             }
     86             else if(symbol==1)
     87             {
     88                 if(two>four)
     89                 {
     90                     for(int i=two;;i++)
     91                     {
     92                         if(i%two==0&&i%four==0)
     93                         {
     94                             six=i;
     95                             one=six/two+one;
     96                             three=six/four+three;
     97                             break;
     98                         }    
     99                     }
    100                 }
    101                 else if(two<four)
    102                 {
    103                     for(int i=four;;i++)
    104                     {
    105                         if(i%two==0&&i%four==0)
    106                         {
    107                             six=i;
    108                             one=six/two+one;
    109                             three=six/four+three;
    110                             break;
    111                         }
    112                     }
    113                 }
    114                 else
    115                 {
    116                     six=two;
    117                 }
    118                 
    119                 five=one-three;
    120                 
    121                 if(five==0)
    122                 {
    123                     System.out.println(one+"/"+two+" - "+three+"/"+four+" = "+"0");
    124                 }
    125                 else if(five>six)
    126                 {
    127                     for(int j=six;;j--)
    128                     {
    129                         if(five%j==0&&six%j==0)
    130                         {
    131                             five=five/j;
    132                             six=six/j;
    133                             break;
    134                         }
    135                     }
    136                     System.out.println(one+"/"+two+" - "+three+"/"+four+" = "+five+"/"+six);
    137                 }
    138                 else if(five<six)
    139                 {
    140                     for(int j=five;;j--)
    141                     {
    142                         if(five%j==0&&six%j==0)
    143                         {
    144                             five=five/j;
    145                             six=six/j;
    146                             break;
    147                         }
    148                     }
    149                     System.out.println(one+"/"+two+" - "+three+"/"+four+" = "+five+"/"+six);
    150                 }
    151             }
    152             else if(symbol==2)
    153             {
    154                 five=one*three;
    155                 six=two*four;
    156                 
    157                 if(five==0)
    158                 {
    159                     System.out.println(one+"/"+two+" * "+three+"/"+four+" = "+"0");
    160                 }
    161                 else if(five>six)
    162                 {
    163                     for(int j=six;;j--)
    164                     {
    165                         if(five%j==0&&six%j==0)
    166                         {
    167                             five=five/j;
    168                             six=six/j;
    169                             break;
    170                         }
    171                     }
    172                     System.out.println(one+"/"+two+" * "+three+"/"+four+" = "+five+"/"+six);
    173                 }
    174                 else if(five<six)
    175                 {
    176                     for(int j=five;;j--)
    177                     {
    178                         if(five%j==0&&six%j==0)
    179                         {
    180                             five=five/j;
    181                             six=six/j;
    182                             break;
    183                         }
    184                     }
    185                     System.out.println(one+"/"+two+" * "+three+"/"+four+" = "+five+"/"+six);
    186                 }
    187             }
    188             else if(symbol==3)
    189             {
    190                 five=one*four;
    191                 six=two*three;
    192                 if(five==0)
    193                 {
    194                     System.out.println(one+"/"+two+" / "+three+"/"+four+" = "+"0");
    195                 }
    196                 else if(five>six)
    197                 {
    198                     for(int j=six;;j--)
    199                     {
    200                         if(five%j==0&&six%j==0)
    201                         {
    202                             five=five/j;
    203                             six=six/j;
    204                             break;
    205                         }
    206                     }
    207                     System.out.println(one+"/"+two+" / "+three+"/"+four+" = "+five+"/"+six);
    208                 }
    209                 else if(five<six)
    210                 {
    211                     for(int j=five;;j--)
    212                     {
    213                         if(five%j==0&&six%j==0)
    214                         {
    215                             five=five/j;
    216                             six=six/j;
    217                             break;
    218                         }
    219                     }
    220                     System.out.println(one+"/"+two+" / "+three+"/"+four+" = "+five+"/"+six);
    221                 }
    222             }
    223             
    224             time++;
    225             
    226         }
    227     }
    228 }

    3.运行结果截图

    4.上课未按时完成的原因:未带电脑

  • 相关阅读:
    108. Convert Sorted Array to Binary Search Tree
    How to check if one path is a child of another path?
    Why there is two completely different version of Reverse for List and IEnumerable?
    在Jenkins中集成Sonarqube
    如何查看sonarqube的版本 how to check the version of sonarqube
    Queue
    BFS广度优先 vs DFS深度优先 for Binary Tree
    Depth-first search and Breadth-first search 深度优先搜索和广度优先搜索
    102. Binary Tree Level Order Traversal 广度优先遍历
    How do I check if a type is a subtype OR the type of an object?
  • 原文地址:https://www.cnblogs.com/Daddy/p/5251442.html
Copyright © 2011-2022 走看看