Description
读入三角形的三条边,进行如下的判断:
- 如果输入值不合法,输出
illegal triangle
,表示三角形不合法 - 如果输入值合法,两条较短边的平方和大于最长边的平方,则输出
acute triangle
,表示锐角三角形 - 如果输入值合法,两条较短边的平方和等于最长边的平方,则输出
right triangle
,表示直角三角形 - 如果输入值合法,两条较短边的平方和小于最长边的平方,则输出
obtuse triangle
,表示钝角三角形
如果任意两条边的和 大于 第三边,那么输入的三角形就是合法的。
Input
读入三个整数 a,b,c(1 <= a,b,c <= 100),表示三角形的三条边。
Output
根据情况输出illegal triangle
、acute triangle
、right triangle
、obtuse triangle
中的一种。
Sample Input
3 4 5
Sample Output
right triangle
#include<s
tdio.h>
#include<math.h>
int main()
{
int a,b,c;
double a1,b1,c1;
while(~scanf("%d%d%d",&a,&b,&c)){
if(a+b>c&&a+c>b&&b+c>a){
a1=pow(a,2);
b1=pow(b,2);
c1=pow(c,2);
if(a1+b1==c1||a1+c1==b1||b1+c1==a1){
printf("right triangle\n");
}else {
if(a1>b1&&a1>c1){
if(c1+b1>a1){
printf("acute triangle\n");
}else if(c1+b1<a1)
printf("obtuse triangle\n");
}else if(b1>a1&&b1>c1){
if(a1+c1>b1){
printf("acute triangle\n");
}else if(a1+c1<b1)
printf("obtuse triangle\n");
}else if(c1>a1&&c1>b1){
if(a1+b1>c1){
printf("acute triangle\n");
}else if(a1+b1<c1)
printf("obtuse triangle\n");
}
}
}else
printf("illegal triangle\n");
} return 0;
}