azure011328

导航

 

package org.example;

public class TriangleChecker {
public String checkTriangleType(int a, int b, int c) {
// 检查非三角形情况
if (a <= 0 || b <= 0 || c <= 0) {
return "非三角形";
}
if (a + b <= c || a + c <= b || b + c <= a) {
return "非三角形";
}

// 检查等边三角形
if (a == b && b == c) {
return "等边三角形";
}

// 检查等腰三角形
if (a == b || b == c || a == c) {
return "等腰三角形";
}

// 检查直角三角形
if (isRightTriangle(a, b, c)) {
return "直角三角形";
}

// 检查钝角三角形
if (isObtuseTriangle(a, b, c)) {
return "钝角三角形";
}

// 剩下的情况是锐角三角形
return "锐角三角形";
}

private boolean isRightTriangle(int a, int b, int c) {
int max = Math.max(Math.max(a, b), c);
int min = Math.min(Math.min(a, b), c);
int mid = a + b + c - max - min;

return min * min + mid * mid == max * max;
}

private boolean isObtuseTriangle(int a, int b, int c) {
int max = Math.max(Math.max(a, b), c);
int min = Math.min(Math.min(a, b), c);
int mid = a + b + c - max - min;

return min * min + mid * mid < max * max;
}
}

posted on 2025-06-11 08:54  淮竹i  阅读(11)  评论(0)    收藏  举报