设计一个根据三角形的三边长设计周长和面积的程序,当用户输入的三个边长不能构成三角形时,使用throws抛出异常
时间: 2024-03-26 15:36:03 浏览: 22
好的,以下是我给您设计的Java程序:
```java
import java.util.Scanner;
public class Triangle {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入三角形的三条边长:");
double a = input.nextDouble();
double b = input.nextDouble();
double c = input.nextDouble();
input.close();
try {
double perimeter = getPerimeter(a, b, c);
double area = getArea(a, b, c);
System.out.println("周长为:" + perimeter);
System.out.println("面积为:" + area);
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
}
public static double getPerimeter(double a, double b, double c) throws IllegalArgumentException {
if (a + b <= c || a + c <= b || b + c <= a) {
throw new IllegalArgumentException("输入的三条边长不能构成三角形!");
}
return a + b + c;
}
public static double getArea(double a, double b, double c) throws IllegalArgumentException {
double p = getPerimeter(a, b, c) / 2;
return Math.sqrt(p * (p - a) * (p - b) * (p - c));
}
}
```
程序的运行结果如下:
```
请输入三角形的三条边长:3 4 5
周长为:12.0
面积为:6.0
```
如果输入的三个边长不能构成三角形,则会抛出异常并输出错误信息:
```
请输入三角形的三条边长:1 2 3
输入的三条边长不能构成三角形!
```