A26411. 判断三角形类型
填空题
较易
知识点
题目描述
判断三角形类型
题目描述
在一个小镇上,有一位名叫艾米的小女孩,她非常喜欢观察各种形状。一天,她在公园里发现了一块奇特的三角形玻璃。这块玻璃不仅外形完美,还能反射出七彩的光芒。艾米觉得这块玻璃一定有神秘的力量,于是她把它带回家仔细研究。几天后,艾米发现这块三角形玻璃可以用来聚焦阳光,点燃火柴。这个发现让她惊喜不已,也激发了她对科学的浓厚兴趣。
现在艾米想知道这块三角形玻璃的形状:
① 如果三角形的三条边都相等,那么这个三角形是等边三角形;
② 如果三角形中有两条边的长度相等,那么这个三角形是等腰三角形;
③ 如果三角形的一条边长的平方等于另外两条边长的平方和,那么这个三角形是直角三角形。
输入三角形的三边长度,判断该三角形是等腰三角形、直角三角形还是等边三角形。(输入数据保证能构成三角形)。
如果是等腰三角形,输出"Isosceles glass";
如果是等边三角形,输出"Equilateral glass";
如果是直角三角形,输出"Right angle glass";
如果三者都不是,输出"None"。
输入描述
输入只有一行,三个正整数,代表三角形的三条边长,之间用空格隔开。
输出描述
输出只有一行,一个字符串。
样例 1
输入
1001 1001 1
输出
Isosceles glass
样例 2
输入
3 4 5输出
Right angle glass样例 3
输入
5 7 8输出
None提示
输入的正整数不超过 10000,保证三角形属于且只属于 4 种情况之一。虽然等边三角形也满足等腰三角形的条件,但在本题中判定为等边三角形。
参考答案
#include <iostream>
using namespace std;
int main() {
int a, b, c;
cin >> a >> b >> c;
// 判断是否为等边三角形
if (a == b && b == c) {
cout << "Equilateral glass" << endl;
}
// 判断是否为直角三角形
else if (a*a == b*b + c*c || b*b == a*a + c*c || c*c == a*a + b*b) {
cout << "Right angle glass" << endl;
}
// 判断是否为等腰三角形
else if (a == b || b == c || a == c) {
cout << "Isosceles glass" << endl;
}
// 以上都不是
else {
cout << "None" << endl;
}
return 0;
}
上一题
下一题