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

    设计思路:

      1.定义数组 char a[]={‘+’,’-’,’*’,’/’};

        定义不同的代数来分别代替相应的变量(如可定制(数量(n)/打印方式),数值范围)其中数值范围用(int)(Math.random()*(最大值-最小值)+最小值)定义;

       2.利用for循环进行n个算法的输出;

          用if语句进行相应条件的判断 :在是否有乘除法时当有乘除时在进行是否有余数的 否则不用判断是否有余数  ;

           其中定义j=(int)(Math.random()*4);来随机对应相应的运算符a[j];

            判断当为除法运算时分母是否为零,为零则停止本次运算;

     代码:

    package suanfa;
    
    import java.util.Scanner;
    
    public class suanfa {
    
     public static void main(String[] args) {
      // TODO Auto-generated method stub
         int i,j;
         //--------------------------------------可定制(数量/打印方式)--------------------------------------------------------------
         System.out.print("输入你想定制的题目数量 :" );
         Scanner in=new Scanner(System. in);
         int n=in.nextInt();
         
         //-------------------------------------------数值范围----------------------------------------------------------------------
         System.out.print("输入数值范围 的最小值:" );
         double number1=in.nextInt();
         System.out.print("输入数值范围 的最大值: " );
         double number2=in.nextInt();  
         double b[]= new double[n];
         double c[]=new double[n];
         double d[]=new double[n];   
         //-------------------------------------------是否有乘除法-------------------------------------------------------------------
         System.out.print("是否有乘除法:是--1;否--0 : " );
         int bool=in.nextInt();
         if(bool==1)
         {
          //-------------------------------------------除法有无余数-------------------------------------------------------------------
          System.out.print("是否有余数:是--1;否--0 : " );
          int  bool1=in.nextInt(); 
          char a[]={'+','-','*','/'};
          for( i=0;i<n;i++)
             {
                 b[i]=(int)(Math.random()*(number2-number1)+number1); 
                 c[i]=(int)(Math.random()*(number2-number1)+number1);
                 j=(int)(Math.random()*(4-0)+0);
                 if(c[i]==0&&a[j]=='/') continue;
                 if(a[j]=='+')d[i]=b[i]+c[i];
                 if(a[j]=='-')d[i]=b[i]-c[i];
                 if(a[j]=='*')d[i]=b[i]*c[i];
                 if(a[j]=='/') 
                 {
                  if(bool1==1)
                  {
                  if(b[i]%c[i]!=0)
                  {
                   d[i]=b[i]/c[i];
                   System.out.print("有余数为 "+b[i]%c[i]+" : " );
                     
                  }
                  else continue;
                  }
                  else
                  {
                   if(b[i]%c[i]==0)
                    {
                    d[i]=b[i]/c[i];
                    System.out.print("无余数: " );
                    }
                      else continue;
                  }
                 }
                 // ------------------------------------------- 题目避免重复()----------------------------------------------------------------------      
                 if(i==0)
                 {   if(b[0]==b[n-1]&&c[0]==c[n-1]&&d[0]==d[n-1])continue;}
                 else
                 {   if(b[i]==b[i-1]&&c[i]==c[i-1]&&d[i]==d[i-1])continue;}
                 
                
                 System.out.println(" ("+b[i]+") "+a[j]+" ("+c[i]+") =___;"+"   运行结果为:"+d[i] );
                
              }
          
          
         }
          
         
         else
         {
          char a[]={'+','-'};
          for( i=0;i<n;i++)
             {
                 b[i]=(int)(Math.random()*(number2-number1)+number1); 
                 c[i]=(int)(Math.random()*(number2-number1)+number1);
                 j=(int)(Math.random()*(2-0)+0);
                 if(c[i]==0&&a[j]=='/') continue;
                 if(a[j]=='+')d[i]=b[i]+c[i];
                 if(a[j]=='-')d[i]=b[i]-c[i];
                 // ------------------------------------------- 题目避免重复()----------------------------------------------------------------------      
                 if(i==0)
                 {   if(b[0]==b[n-1]&&c[0]==c[n-1]&&d[0]==d[n-1])continue;}
                 else
                 {   if(b[i]==b[i-1]&&c[i]==c[i-1]&&d[i]==d[i-1])continue;}
                 System.out.println(" ("+b[i]+") "+a[j]+" ("+c[i]+") =___;"+"   运行结果为:"+d[i] );
              }
         }
         
       }
    }

    截图:

                            周活动总结表:

    听课

    编写代码

    阅读课本

    准备考试

    日总计

    周日

    30

    30

    周一

    100

    55

    130

    周二

    45

    45

    周三

    30

    30

    周四

    周五

    60

     22

    80

    周六

     120

     120

    周总计

    100

    310

    82

    492

                                                                                            

                             时间记录日志:                                             

    日期

    开始时间

    结束时间

    中断时间

    净时间

    活动

    备注

    C

    U

    3/14

    8:00

    9:50

    10

    100

    听课

    理论学时,课件

    15:00

    16:30

    35

    55

    编程序

    作业,玩手机

    3/15

    15:10

    16:20

    45

    45

    编程序,讨论

    睡觉,查相应的知识点

    3/16

    17:20

    17:50

    30

    看书

    《构建之法》

    21:30

    21:55

    25

    看书

    《构建之法》

    3/18

    21:00

    23:30

    15+20

    125

    编程序,看书

    3/19

    8:30

    11:00

    45

    115

    编程序

    15:30

    17:45

    120

    编程序,写报告

                    缺陷记录日志:

    日期

    编号

    类型

    引入阶段

    排除阶段

    修复时间

    修复缺陷

     3/19

    2

     20

    编码

    编译

    40min

    描述:if语句太多,关系太乱了

          

  • 相关阅读:
    oracle列合并
    Java移位操作符
    angularjs 事件向上向下传播
    angularjs 路由 ngRoute tab切换
    angularjs 自定义服务
    angularjs 服务供应商
    angularjs 缓存 $q
    angularjs $location 服务
    angularjs $http 服务
    angularjs 自定义指令 directive
  • 原文地址:https://www.cnblogs.com/chenpengmeng/p/5295922.html
Copyright © 2011-2022 走看看