输入三个数判断这三个数

问题遇到的现象和发生背景

输入三个数判断这三个数能否组成三角形,若能够组成三角形则判断它们能组成什么三角形,若是锐角三角形请输出“acute triangle”,若是直角三角形请输出“right triangle”,若是钝角三角形请输出“obtuse triangle”,若不能组成三角形,则输出“No”

问题相关代码,请勿粘贴截图

输入三个数判断这三个数能否组成三角形,若能够组成三角形则判断它们能组成什么三角形,若是锐角三角形请输出“acute triangle”,若是直角三角形请输出“right triangle”,若是钝角三角形请输出“obtuse triangle”,若不能组成三角形,则输出“No”输入三个数判断这三个数能否组成三角形,若能够组成三角形则判断它们能组成什么三角形,若是锐角三角形请输出“acute triangle”,若是直角三角形请输出“right triangle”,若是钝角三角形请输出“obtuse triangle”,若不能组成三角形,则输出“No”

运行结果及报错内容
我的解答思输入三个数判断这三个数能否组成三角形,若能够组成三角形则判断它们能组成什么三角形,若是锐角三角形请输出“acute triangle”,若是直角三角形请输出“right triangle”,若是钝角三角形请输出“obtuse triangle”,若不能组成三角形,则输出“No”路和尝试过的方法

三个数,3条边距离先计算出来,如果有一条边距离等于其他两条边距离和,则不是三角形,否则是三角形,如果有两条边平方等于最长边平方则是直角三角形,两条边平方小于最长边平方是钝角三角形,两条边平方大于最长边平方是锐角三角形


#include<iostream>
using namespace std;
#include<cmath>
int main()
{
    cout<<"请输入三角形的三条边:"<<endl;
    int a,b,c;//a,b,c分别表示三角形的三边
    cin>>a>>b>>c;
    if((((a+b)>c&&c>abs(a-b))&&((c+b)>a&&a>abs(c-b))&&((a+c)>b&&b>abs(a-c)))){
        if(a==b&&b==c&&a==c)
            cout<<"这是等边三角形"<<endl;
        else if(a==b||a==c||b==c)
            cout<<"这是等腰三角形"<<endl;
        else if((a*a+b*b==c*c)||(b*b+c*c==a*a)||(a*a+c*c==b*b))
            cout<<"这是直角三角形"<<endl;
        else 
            cout<<"这是普通三角形"<<endl;

    }else{
        cout<<"无法构成三角形"<<endl;
    }

    return 0;
}