# zerojudge c294 APCS 2016年 10月 第 1 題 三角形辨別 ###### tags: `zerojudge` 題目連結: https://zerojudge.tw/ShowProblem?problemid=c294 解題方法: 題目可分為兩個部分: 1. 確認是否能成為三角形 利用*"三角不等式"*(兩個較小邊的和大於第三邊) 判斷是否成為三角形 2. 如果是三角形,則用"*畢氏定理*"判斷三角形類別: 1. axa + bxb = cxc 為 直角三角形 2. axa + bxb > cxc 為 銳角三角形 3. axa + bxb < cxc 為 鈍角三角形 以下是我的程式碼: ``` c++ #include<bits/stdc++.h>; using namespace std; int main(){ int a[3]; for( int i=0 ; i<3 ; i++ ){ cin>>a[i]; } sort(a,a+3); if((a[0]+a[1])>a[2]){ if((a[0]*a[0]+a[1]*a[1])>(a[2]*a[2])){ cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl<<"Acute"<<endl; }else if( ( a[0]*a[0]+a[1]*a[1] ) == ( a[2]*a[2] ) ){ cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl<<"Right"<<endl; }else{ cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl<<"Obtuse"<<endl; } }else{ cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl<<"No"<<endl; } } ```