• 软件工程个人作业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.上课未按时完成的原因:未带电脑

  • 相关阅读:
    二维动态规划(2)
    细节是否真的打败爱情,十年后你还会爱我吗?
    C++的四种cast操作符的区别类型转换
    纯虚函数
    二维动态规划
    1,2,...n n个数m个丢失,找出丢失的数
    虚拟内存管理技术
    C++ 面试题总结
    【转】图的邻接链表 adjacent list of graph
    CIOCPServer的数据结构定义及内存池方案
  • 原文地址:https://www.cnblogs.com/Daddy/p/5251442.html
Copyright © 2020-2023  润新知