如题,下面是程序
#include<cstdio>
using namespace std;
int st,nd,rd,stt,ndd,rdd;
int cc(int z){
return z*z;
}
void gett(int u,int v,int w,int x){
if(x==1)st=u;nd=v;rd=w;
else stt=u;ndd=v;rdd=w;
}
bool pk(int s,int t){
return s<=t;
}
void queueup(int p,int q,int r,int y){
if(pk(p,q)&&pk(q,r))gett(p,q,r,y);
else if(pk(p,r)&&pk(r,q))gett(p,r,q,y);
else if(pk(q,p)&&pk(p,r))gett(q,p,r,y);
else if(pk(q,r)&&pk(r,p))gett(q,r,p,y);
else if(pk(r,p)&&pk(p,q))gett(r,p,q,y);
else gett(r,q,p,y);
}
int ss(int m,int n,int o){
queueup(m,n,o,1);
if(st+nd<=rd)return 0;
else{
if(st==nd||st==rd||nd==rd){
if(st==nd&&st==rd)return 2;
else return 1;
}else return 3;
}
}
int aa(int i,int j,int k){
queueup(i,j,k,2);
if(ss(stt,ndd,rdd)==0)return 10;
else{
if(cc(stt)+cc(ndd)>cc(rdd))return 11;
else if(cc(stt)+cc(ndd)=cc(rdd))return 12;
else return 13;
}
}
int main( ){
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
switch(aa(a,b,c)){
case 10:printf("Not triangle");break;
case 11:printf("Acute triangle");break;
case 12:printf("Right triangle");break;
case 13:printf("Obtuse triangle");break;
}
switch(ss(a,b,c)){
case 0:break;
case 1:printf("Isosceles triangle");break;
case 2:printf("Equilateral triangle");break;
case 3:break;
}
return 0;
}