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;
}
上一篇 下一篇

猜你喜欢

热点阅读