AcWing 666. 三角形类型
原题链接
简单
作者:
M_580
,
2025-02-04 23:11:38
,
所有人可见
,
阅读 1
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
double a,b,c;
cin>>a>>b>>c;
//A,B和C并按降序排列,使a是三边中最大的一边。
//1.比较a和b大小
if(b>a)
{
//交换a和b
double t=a; a=b; b=t;
//执行完这里之后一定意味着a>b了
}
//2.比较a和c大小
if(c>a)
{
//交换a和c
double t=a; a=c; c=t;
//执行完这里之后a不仅比b大,还比c大。这样a就是最大值了
}
//3.最后再比较一下剩余的b和c
if(c>b)
{
double t=c; c=b; b=t;
}
//到此就一定保证了a>b>c!!!
if(a>=b+c) cout<<"NAO FORMA TRIANGULO"<<endl;
else
{
//注意:可能满足不止一条,这种情况下按题目介绍顺序输出,每行输出一条。【记得换行endl!!】
if(a*a==b*b+c*c) cout<<"TRIANGULO RETANGULO"<<endl;
if(a*a>b*b+c*c) cout<<"TRIANGULO OBTUSANGULO"<<endl;
if(a*a<b*b+c*c) cout<<"TRIANGULO ACUTANGULO"<<endl;
if(a==b&&b==c) cout<<"TRIANGULO EQUILATERO"<<endl;
else if(a==b||b==c||a==c) cout<<"TRIANGULO ISOSCELES"<<endl;
}
return 0;
}