#3837: 一直錯在第一個


jeff8363 (百香綠)


#include<iostream>
#include<cmath>
#include <cstdlib>
using namespace std;
int main()
{
  int a,b,c;
  while(cin>>a>>b>>c)
  {
        if((a*a+b*b>c*c)||(a*a+c*c>b*b)||(b*b+c*c>a*a)||(b*b+a*a>c*c)||(c*c+a*a>b*b)||(c*c+b*b>a*a))
  {cout<<"acute triangle";}
   else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a)||(b*b+a*a==c*c)||(c*c+a*a==b*b)||(c*c+b*b==a*a))
   {cout<<"right triangle";}
   else if((a*a+b*b<c*c)||(a*a+c*c<b*b)||(b*b+c*c<a*a)||(b*b+a*a<c*c)||(c*c+a*a<b*b)||(c*c+b*b<a*a))
   {cout<<"obtuse triangle";}
 
  
  
   
  }
  system("pause");
  return 0;
}

 

我真的看不出來有哪裡不行

但第一個測試點就是不過

請大大給點指教

#3844: Re:一直錯在第一個


linishan (L)


#include
#include
#include
using namespace std;
int main()
{
  int a,b,c;
  while(cin>>a>>b>>c)
  {
        if((a*a+b*b>c*c)||(a*a+c*c>b*b)||(b*b+c*c>a*a)||(b*b+a*a>c*c)||(c*c+a*a>b*b)||(c*c+b*b>a*a))
  {cout<<"acute triangle";}
   else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a)||(b*b+a*a==c*c)||(c*c+a*a==b*b)||(c*c+b*b==a*a))
   {cout<<"right triangle";}
   else if((a*a+b*b   {cout<<"obtuse triangle";}
 
  
  
   
  }
  system("pause");
  return 0;
}

 

我真的看不出來有哪裡不行

但第一個測試點就是不過

請大大給點指教


會有邏輯問題

你這樣寫法已是違背原本定義了

還是排序好 再比較