C++ 判断三个数能否构成三角形
2022-06-19 本文已影响0人
ShowMeCoding
输入三个整数,表示一个三角形的三条边长,请输出该三角形的类型。
说明:直角三角形(含等腰直角)输出"right";等腰三角形输出"isosceles";等边三角形输出"equilateral";没有特殊形状输出"normal";若无法组成三角形则输出"no"。
输入描述:
一行,三个正整数。
输出描述:
一行,一个字符串:直角(含等腰直角)三角形输出"right",等腰三角形输出"isosceles",等边三角形输出"equilateral",没有特殊形状输出"normal",若无法组成三角形则输出"no"
示例 1:
输入:
2 3 4
输出:
normal
运算符优先顺序为:赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符。
#include <bits/stdc++.h>
using namespace std;
int main() {
// 请补全代码,实现题目功能
int a, b, c, t;
cin >> a >> b >> c;
if (a > b) {
t = a;
a = b;
b = t;
}
if (b > c) {
t = b;
b = c;
c = t;
}
if (a > b) {
t = a;
a = b;
b = t;
}
if (a + b <= c)
cout << "no" << endl;
else if (a*a + b* b == c* c)
cout << "right" << endl;
else if (a == b || b == c) {
if (a == b && b == c)
cout << "equilateral";
else
cout << "isosceles";
}
else
cout << "normal";
return 0;
}