首页 > 代码库 > 源码+067(第二次)

源码+067(第二次)

 

     1.测试帖链接:http://www.cnblogs.com/leezoey/p/6579928.html

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

        对于边值得界定,应该单独优化出一个函数,防止后面又对边值得界定做出改变。

     3.修正后的代码清单:因为测试人员提出不足的地方后就修改好了代码,所以我就在此基础上根据评论的在if语句加了大括号。

     

技术分享
  1 2
  2 3
  3 4
  4 5
  5 6
  6 7
  7 8
  8 9
  9 10
 10 11
 11 12
 12 13
 13 14
 14 15
 15 16
 16 17
 17 18
 18 19
 19 20
 20 21
 21 22
 22 23
 23 24
 24 25
 25 26
 26 27
 27 28
 28 29
 29 30
 30 31
 31 32
 32 33
 33 34
 34 35
 35 36
 36 37
 37 38
 38 39
 39 40
 40 41
 41 42
 42 43
 43 44
 44 45
 45 46
 46 47
 47 48
 48 49
 49 50
 50 51
 51 52
 52 53
 53 54
 54 55
 55 56
 56 57
 57 58
 58 59
 59 60
 60 61
 61 62
 62 63
 63 64
 64 65
 65 66
 66 import java.util.Scanner;
 67  
 68 public class main2 {
 69     public static void main(String[] args) {
 70         // TODO Auto-generated method stub
 71         int a=0,b=0,c=0;
 72         //设计可判断十组边
 73         for(int i=0;i<10;i++)
 74         {
 75             System.out.println("请输入三角形的三条边(用逗号隔开):");
 76             //输入三角形三条边
 77             Scanner sr = new Scanner(System.in);
 78             String sc = sr.next();
 79             //以逗号隔开三条边
 80             String[] sourceStrArray = sc.split(",");
 81             if(sourceStrArray.length==3){
 82             //输入是否为纯整数判断
 83             try{
 84             a = Integer.parseInt(sourceStrArray[0]);
 85             b = Integer.parseInt(sourceStrArray[1]);
 86             c = Integer.parseInt(sourceStrArray[2]);
 87             }catch(Exception e){
 88                 System.out.println("输入错误!");
 89                 continue;
 90             } }
 91             else{
 92                 System.out.println("输入错误");
 93                 continue;}
 94             //调用方法       
 95             String result = triangle(a, b, c);
 96             System.out.println(result);
 97          
 98         }               
 99     }
100      
101     //判断三角形
102     public static String triangle(int a, int b,int c)
103     {
104        //值的范围
105         if(charge(a,b,c)){
106             return "边的值不在范围内";}
107         //能否构成三角形
108         else if(a>=b+c||b>=a+c||c>=a+b){
109             return "不构成三角形";}
110         else{
111             //等边三角形
112             if(a==b&&b==c){
113                 return "等边三角形";}
114             //等腰三角形
115             else if(a==b||b==c||a==c){
116                 return "等腰三角形";}
117             //直角三角形
118             else if(a*a==b*b+c*c||b*b==a*a+c*c||c*c==b*b+a*a){
119                return "直接三角形";}
120             //一般三角形
121             else{
122                return"一般三角形";}
123             } 
124     }
125     public static boolean charge(int a, int b,int c){
126         if(a<1||a>100||b<1||b>100||c<1||c>100)
127             return false;
128         else
129             return true;
130     }
131 }
View Code

 

     4.修正后心得体会:

    • 介绍自己代码做了怎样的变更:增加了三角形三条边的边界值限定的bool型函数
    • 分析出现缺陷的原因:通过,并没有找出缺陷,只有不足的地方
    • 对这部分教材内容的学习心得:对判定覆盖的定义和条件覆盖有点混乱,对画流程图深恶痛绝!if条件太多了,画的很乱。

源码+067(第二次)