zoukankan      html  css  js  c++  java
  • 第二次作业+105032014124

    1、测试帖连接:http://www.cnblogs.com/Tichocan/p/6576087.html

       源码连接:http://www.cnblogs.com/xiaojuangao/p/6531078.html

     

    2、测试人员提出的问题、发现的缺陷

      原代码中无用的判断语句过多,可以优化逻辑,简化一个判断。

     

    3、修正后的代码清单

     

     1 package 软件测试实验1;
     2 import java.util.Arrays;
     3 import java.util.Scanner;
     4 
     5 public class test01 {
     6     public static void main(String[] args){
     7         int[] length=new int[3];
     8         String result=null;
     9         boolean flag=true;
    10         Scanner sc = new Scanner(System.in);
    11         while(flag){
    12            System.out.print("***********************
    ");
    13            System.out.print("请输入三角形的三条边
    ");
    14            System.out.print("第一条边:");
    15            length[0]=sc.nextInt(); 
    16            System.out.print("第二条边:");
    17            length[1]=sc.nextInt();   
    18            System.out.print("第三条边:");
    19            length[2]=sc.nextInt();
    20            Arrays.sort(length);//对三条边进行排序
    21            if(length[0]<1||length[2]>100){
    22                System.out.print("Attention!边的值不在范围内!!");
    23            }
    24            else
    25            {
    26                result=triangle(length[0],length[1],length[2]);
    27                System.out.print(length[0]+","+length[1]+","+length[2]+"可构成"+result);
    28                System.out.print("
    ***********************
    ");
    29                
    30            }
    31            System.out.print("是否要继续输入数据?1:Yes 2:No");
    32            String temp=sc.next();
    33            switch(temp)
    34             {
    35                case"1":
    36                    flag=true;
    37                    break;
    38                case"2":
    39                    flag=false;
    40                    System.out.print("您已退出程序");
    41                    break;
    42             }
    43         }
    44     }
    45     
    46     public static String triangle(int a,int b,int c){
    47         String sort=null;
    48         /*
    49          * //修改处:因为对三条边进行排序,所以判断语句会比较简单。
    50          */
    51         if((a+b>c)&&((c-b)<a)){
    52             if((a==b)||(b==c)){
    53                     sort="等腰三角形";
    54             }
    55             else if(a==c){
    56                 sort="等边三角形";
    57             }
    58             else if(a*a+b*b==c*c)
    59                 sort="直角三角形";
    60             else 
    61                 sort="一般三角形";
    62         }
    63         else{
    64             sort="不能构成三角形";
    65     }
    66         return sort;
    67 }
    68 }

    4、修正后的心得体会

    1)、代码变更:

         对三角形的三条边进行排序,简化判断三角形形状的语句

         (在代码中加入while语句,可以方便测试与使用,所以这部分代码仍保留)

    2)、心得与体会

       看了测试人员的测试结果和建议后,我觉得有一定的道理:先对三角形的三条边进行排序,这样,在进行是否构成三角形、等腰三角形、等边三角形、直角三角形的时候可以简化判断语句。其实,之前在编写代码的时候,我也有对三角形三条边进行排序,后来发现题目要求:条件1a100,条件2   1b100;条件3   1c100 ,所以我就觉得排序删了会比较好。

       我觉得,一个比较好的程序,离不开开发人员与测试人员的共同努力,所以,开发者与测试者要经常交流沟通,这样可以优化程序。

       在这次实验中,我既是开发人员,也对别的同学写的代码进行了语句覆盖、判定覆盖的测试,用到了课堂上学的软测的知识,学以致用。

     

  • 相关阅读:
    OpenCV教程(46) 快速特征检测
    OpenCV教程(45) harris角的检测(3)
    OpenCV教程(44) harris角的检测(2)
    OpenCV教程(43) harris角的检测(1)
    Andriod源码搜集
    OpenCV特征检测教程
    使用SGD(Stochastic Gradient Descent)进行大规模机器学习
    根据两点经纬度计算距离【转】
    转载]根据两点的经纬度求方位角和距离,等
    array
  • 原文地址:https://www.cnblogs.com/xiaojuangao/p/6627104.html
Copyright © 2011-2022 走看看