输入三个double类型数代表三角形边长,判断是否满足任意两边大于第三边,是则计算其周长和面积sqrt(s*(s-a)*(s-b)*(s-c)),否则输出错误。用java语言编译
时间: 2024-09-23 15:06:53 浏览: 36
在Java中,你可以通过创建一个方法来实现这个功能。首先,你需要检查输入的三边长度是否满足三角形的条件,然后计算周长和面积。这是一个简单的示例:
```java
import java.util.Scanner;
import Math.sqrt;
public class Triangle {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入三角形的三条边长:");
double a = scanner.nextDouble();
double b = scanner.nextDouble();
double c = scanner.nextDouble();
if (isValidTriangle(a, b, c)) {
double perimeter = calculatePerimeter(a, b, c);
double area = calculateArea(a, b, c);
System.out.printf("三角形的周长是 %.2f,面积是 %.2f.\n", perimeter, area);
} else {
System.out.println("输入的边长无法构成三角形,请重新输入.");
}
}
// 判断是否满足三角形条件
public static boolean isValidTriangle(double a, double b, double c) {
return a + b > c && a + c > b && b + c > a;
}
// 计算周长
public static double calculatePerimeter(double a, double b, double c) {
return a + b + c;
}
// Heron公式计算面积
public static double calculateArea(double a, double b, double c) {
double s = (a + b + c) / 2; // 半周长
return sqrt(s * (s - a) * (s - b) * (s - c)); // 使用Math.sqrt防止除以零异常
}
}
```
在这个程序中,`isValidTriangle`函数用于验证输入的边长能否构成三角形,如果可以,则继续计算周长和面积。请注意,`sqrt`方法需要导入`java.lang.Math`包,并且在计算面积时,我们对结果应用了`Math.sqrt`来避免`ArithmeticException`。
阅读全文