java从键盘上输入3个数,判断它是否可以构成一个三角形,并判断它是否是锐角三角形,钝角三角形、直角三角形、等腰三角形,等边三角形?如果是直角三角形,求三角形的面积。
时间: 2023-06-09 08:07:53 浏览: 99
C语言实验-从键盘输入三角形三个边的长度,计算该三角形的面积。若输入的三条边不能构成三角形。则直接输出信息“不能构成三角形!”
5星 · 资源好评率100%
好的,我可以回答你的问题。以下是代码示例:
```
import java.util.Scanner;
public class Triangle {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入三个数:");
double a = input.nextDouble();
double b = input.nextDouble();
double c = input.nextDouble();
if (a + b > c && a + c > b && b + c > a) {
System.out.println("它们可以构成一个三角形");
double maxSide = Math.max(Math.max(a, b), c);
double minSide = Math.min(Math.min(a, b), c);
double midSide = a + b + c - maxSide - minSide;
if (a == b && b == c) {
System.out.println("它是等边三角形");
} else if (a == b || a == c || b == c) {
System.out.println("它是等腰三角形");
}
if (Math.pow(maxSide, 2) == Math.pow(midSide, 2) + Math.pow(minSide, 2)) {
System.out.println("它是直角三角形");
double area = 0.5 * midSide * minSide;
System.out.println("它的面积是:" + area);
} else if (Math.pow(maxSide, 2) < Math.pow(midSide, 2) + Math.pow(minSide, 2)) {
System.out.println("它是锐角三角形");
} else {
System.out.println("它是钝角三角形");
}
} else {
System.out.println("它们不能构成一个三角形");
}
input.close();
}
}
```
注意:该程序仅对输入的三边长进行了基本的合法性检查,实际应用中可能需要更加严格的判断方法。另外,在输入的三个数中存在负数时,该程序可能会出现异常,请根据实际情况进行修改。
阅读全文