.使用java编写程序,完成三角形的类型判断,程序要求如下: /* * 判断三角形的类型,返回值: * 1、不能组成三角形 * 2、等边三角形 * 3、等腰三角形 * 4、直角三角形 * 5、一般三角形 * 6、某些边不满足限制 */
时间: 2023-09-10 21:06:22 浏览: 61
以下是使用Java编写的三角形类型判断程序:
```java
import java.util.Scanner;
public class TriangleType {
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();
int type = triangleType(a, b, c);
switch (type) {
case 1:
System.out.println("不能组成三角形");
break;
case 2:
System.out.println("等边三角形");
break;
case 3:
System.out.println("等腰三角形");
break;
case 4:
System.out.println("直角三角形");
break;
case 5:
System.out.println("一般三角形");
break;
case 6:
System.out.println("某些边不满足限制");
break;
}
}
public static int triangleType(double a, double b, double c) {
if (a + b <= c || a + c <= b || b + c <= a) {
return 1; // 不能组成三角形
} else if (a == b && b == c) {
return 2; // 等边三角形
} else if (a == b || b == c || a == c) {
if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a) {
return 4; // 直角三角形
} else {
return 3; // 等腰三角形
}
} else {
if (a * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * a) {
return 4; // 直角三角形
} else {
return 5; // 一般三角形
}
}
}
}
```
程序的逻辑如下:
1. 输入三角形的三条边长;
2. 判断是否能够组成三角形;
3. 如果不能组成三角形,则返回1,表示不能组成三角形;
4. 如果能够组成三角形,则继续判断三角形的类型;
5. 如果三边长度相等,则返回2,表示等边三角形;
6. 如果三边中有两边长度相等,则继续判断是否为直角三角形,如果是,则返回4,表示直角三角形,否则返回3,表示等腰三角形;
7. 如果三边长度都不相等,则继续判断是否为直角三角形,如果是,则返回4,表示直角三角形,否则返回5,表示一般三角形。
如果输入的三边长度不符合条件(如输入负数或零),程序会报错或输出错误信息。