题目:
输入三角形3条边的长度值(均为正整数),判断是否能为直角三角形的3个边长。如果可以,则输出 yes,如果不能,则输出 no。如果根本无法构成三角形,则输出not a triangle。
思路:
先判断3条边能否构成普通三角形,如果可以,那么继续判断能否构成直角三角形。
代码:
#include <iostream>
using namespace std;
int main()
{
int a = 0, b = 0, c = 0;
cin >> a >> b >> c;
if ((a + b > c) && (a + c > b) && (b + c > a)) {
if ((a * a + b * b == c * c) || (a * a + c * c == b * b) || (b * b + c * c == a * a)) {
cout << "yes" << endl;
} else {
cout << "no" << endl;
}
} else {
cout << "not a triangle" << endl;
}
return 0;
}