三角形类别
试题描述
三角形的类型还是很多的,那么根据输入的三个正整数,以这三个数为边长,判断是否构成三角形?
若不能输出“no”。
若构成三角形,进一步判断它们构成的是:锐角三角形或直角三角形或钝角三角形。分别输出“ruijiao”,“zhijiao”,“dunjiao”。
备注:
两个短边的平方和等于一个长边的平方时为直角三角形,
两个短边的平方和小于一个长边的平方时为钝角三角形,
两个短边的平方和大于一个长边的平方时为锐角三角形。
输入
输入三个正整数,邻近两数之间用一个空格隔开。代表三角形的三条边。
输出
输出一个字符串,请根据三边情况输出(不输出引号)。
输入示例
3 4 5
输出示例
zhijiao
数据范围
输入为int范围的整数
#include<stdio.h>
int main(){
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a){
if((a>b&&a>c&&aa=bb+cc)||(b>a&&b>c&&bb=aa+cc)||(c>a&&c>b&&cc=aa+bb))
printf("zhijiao");
else if (a>b&&a>c&&aa>bb+cc||b>a&&b>c&&bb>aa+cc||c>a&&c>b&cc>aa+bb)
printf("dunjiao");
else if (a>b&&a>c&&aa<b*b+c*c||b>a&&b>c&&bb<aa+c*c||c>a&&c>b&&cc<aa+bb)
printf("ruijiao");}
else
printf("no");
return 0;}
#include <iostream>
using namespace std;
int main()
{
int a,b,c,max,max2,min2;
cin>>a>>b>>c;
int total = a*a+b*b+c*c;
if(a>b)
{
max = a;
if(c>a)
max = c;
}
else
{
max = b;
if(c>b)
max = c;
}
max2 = max*max;
min2 = total - max2;
if (min2 == max2)
cout<<"zhijiao"<<endl;
else if(min2>max2)
cout<<"ruijiao"<<endl;
else
cout<<"dunjiao"<<endl;
}