提交时间:2025-11-28 19:11:22

运行 ID: 363677

#include <iostream> using namespace std; int main() { int a, b, c; cin >> a >> b >> c; // 检查三角形是否合法 // 三角形要成立,任意两条边的和都必须大于第三条边 if (a + b <= c || a + c <= b || b + c <= a) { cout << "illegal triangle" << endl; return 0; } // 找出最长边 int longest = a; if (b > longest) longest = b; if (c > longest) longest = c; // 计算两条较短边的平方和 int short_sum; if (longest == a) { short_sum = b * b + c * c; } else if (longest == b) { short_sum = a * a + c * c; } else { short_sum = a * a + b * b; } int longest_square = longest * longest; // 判断三角形类型 if (short_sum > longest_square) { cout << "acute triangle" << endl; } else if (short_sum == longest_square) { cout << "right triangle" << endl; } else { cout << "obtuse triangle" << endl; } return 0; }