UT源码 085

一、需求描述

设计三角形问题的程序

      输入三个整数a、b、c,分别作为三角形的三条边,现通过程序判断由三条边构成的三角形的类型为等边三角形、等腰三角形、一般三角形(特殊的还有直角三角形),以及不构成三角形。(等腰直角三角形,判断为等腰三角形)

     现在要求输入三个整数a、b、c,必须满足以下条件:

     条件1   1≤a≤100          条件4   a<b+ c

     条件2   1≤b≤100          条件5   b<a+ c            

     条件3   1≤c≤100          条件6   c<a+ b 

  String triangle(int a,int b,int c)    返回字符型

 程序要求:

1)先显示:“请输入三角形的三条边:”

2)只要有不满足条件1,2,3之一,就返回“边的值不在范围内!”

3)只要有不满足4,5,6之一,就返回“不构成三角形”

4)根据边的情况分别返回:“等边三角形”“等腰三角形”“直角三角形”“一般三角形”

二、代码设计

 1 import java.util.InputMismatchException;
 2 import java.util.Scanner;
 3 
 4 public class TestDemo {
 5     
 6     public static String Triangle(int side1,int side2,int side3)//判断是否构成三角形及三角形的种类
 7     {
 8         String result="三角形";
 9         if(side1+side2<=side3 || side2+side3<=side1 || side1+side3<=side2)
10             return "不构成"+result;
11         else if(side1==side2 && side2==side3)
12             return "等边"+result;
13         else if((side1==side2 && side2!=side3) || (side1==side3 && side2!=side3) || (side2==side3 && side1!=side3))
14             return "等腰"+result;
15         else
16             return "普通"+result;
17     }
18     
19     public static boolean Check(int num) //检验输入的数据是否属于[1,100]
20     {
21         if(num<1 || num>100)
22         {
23             System.out.println("边的值不在范围内!");
24             return false;
25         }
26         return true;
27     }
28     
29     public static void main(String[] args) { 
30         Scanner scanner=new Scanner(System.in);
31         int side1=0,side2=0,side3=0;
32         boolean flag=true;  //用于标记输入的数据是否合法
33         System.out.println("请输入三角形的三条边");
34         try{        //捕获输入异常
35             side1=scanner.nextInt();
36             side2=scanner.nextInt();
37             side3=scanner.nextInt();
38         }
39         catch(InputMismatchException e)  //显示输入异常
40         {
41             flag=false;
42             System.out.println("请输入整数!");
43         }
44         if(flag)  //若输入有误则直接退出
45             if(Check(side1) && Check(side2) && Check(side3))
46                 System.out.println(Triangle(side1,side2,side3));
47     }
48 }

 

posted @ 2017-03-10 15:47  pter  阅读(188)  评论(0编辑  收藏  举报