zoukankan      html  css  js  c++  java
  • 单元测试(补发)

    设计思想:

    通过单元测试对每一个单元测试看结果与预期结果是否相同.不重复的实现,建三个数组,并每次生成随机数后判断a[i]b[i]c[i]与上边已有的a[i]b[i]c[i]是否相同,若相同重新生成a[i]b[i]c[

    for(j=0;j<z;j++)    
                {
                    if(q==a[j]&&w==b[j]&&e==c[j])       ////判断是否相同
                        {a[i]=random.nextInt(100);      ////重新产生a[i]
                        b[i]=random.nextInt(100);       ////重新产生b[i]
                        c[i]=random.nextInt()%4+1;} ////重新产生c[i]
                }
    可定制的实现,输入一个n,比如n=4,当(i+1)%4==0时,输出一个换行,这样就实现了每行有4个算式。
    是否有乘除法的实现,若有乘除法,c取1234,若无乘除c取12.
    c取1234时:
    if      (c[i]==1) s='+';
            else if (c[i]==2) s='-';
            else if (c[i]==3) s='*';
            else s='/';
    c取12时:
    if      (c[i]==1) s='+';
            else s='-';
     
    实现代码:
    package 四则运算;
     
    import java.util.Random;
    import java.util.Scanner;
     
    public class aa {
     
             public static void main(String[] args) {
                       // TODO Auto-generated method stub
                       int i,n,j,m,aa,r = 0;
                       Scanner scanner = new Scanner(System.in);
                       System.out.print("要输出多少道四则运算题,然后敲回车");
                       aa= scanner.nextInt();
                       i=aa;
                       System.out.print("请输入n(每行显示n个式子),然后敲回车");
                       n= scanner.nextInt();
                       System.out.print("是否有乘除法(有 1    无 0),然后敲回车");
                       m= scanner.nextInt();
                       if(m==1)
                                {
                                System.out.print("除法有无余数(有 1    无 0),然后敲回车");
                                r= scanner.nextInt();
                                }
                       scanner.close();
                       int a[],b[],c[];
                       a=new int[i];b=new int[i];c=new int[i];
                       for(i=0;i<aa;i++)
                       {
                       int z,q,w,e;z=i;
                       char s;
                       Random random = new Random();
                       a[i]=random.nextInt(100);
                       b[i]=random.nextInt(100);
     
                       if(m==1)
                       {
                                if(r==1)//有余数
                                {
                                         c[i]=random.nextInt()%4+1;
                                         q=a[i];w=b[i];e=c[i];
                                         for(j=0;j<z;j++)
                                         {
                                                   if(q==a[j]&&w==b[j]&&e==c[j])
                                                            {a[i]=random.nextInt(100);
                                                            b[i]=random.nextInt(100);
                                                            c[i]=random.nextInt()%4+1;}
                                         }
                                         if               (c[i]==1) s='+';
                                         else if (c[i]==2) s='-';
                                         else if (c[i]==3) s='*';
                                         else s='/';
                                }
                                else //无余数
                                {
                                a[i]=random.nextInt(100);
                                b[i]=random.nextInt(100);
                                c[i]=random.nextInt()%4+1;
                                q=a[i];w=b[i];e=c[i];
                                for(j=0;j<z;j++)
                                         {
                                                   if(q==a[j]&&w==b[j]&&e==c[j])
                                                            {a[i]=random.nextInt(100);
                                                            b[i]=random.nextInt(100);
                                                            c[i]=random.nextInt()%4+1;}
                                         }
                                if               (c[i]==1) s='+';
                                else if (c[i]==2) s='-';
                                else if (c[i]==3) s='*';
                                else {s='/';a[i]=a[i]/b[i]*b[i];}
                                }
                       }
                       else
                       {
                       c[i]=random.nextInt()%2+1;
                       q=a[i];w=b[i];e=c[i];
                       for(j=0;j<z;j++)
                                {
                                         if(q==a[j]&&w==b[j]&&e==c[j])
                                                   {a[i]=random.nextInt(100);
                                                   b[i]=random.nextInt(100);
                                                   c[i]=random.nextInt()%2+1;}
                                }
                       if               (c[i]==1) s='+';
                       else s='-';
                       }
                      
                       System.out.print(a[i]);
                       System.out.print(s);
                       System.out.print(b[i]);
                       System.out.print("=     ");
                       if((i+1)%n==0)
                       System.out.println("");
                       }
             }
     
    }

    i]



  • 相关阅读:
    php安装扩展的几种方法
    navicat连接linux系统中mysql-错误:10038
    linux下报错bash: service: command not found
    linux配置防火墙和重启防火墙
    linux 环境安装
    匿名函数
    workman的学习总结
    xampp/apache启动失败解决方法
    Linux 查看IP
    慢查询日志
  • 原文地址:https://www.cnblogs.com/xizhenghe/p/4594207.html
Copyright © 2011-2022 走看看