#15843: 為何不行


s101098@st.estmue.tp.edu.tw (吳在烜)

學校 : 不指定學校
編號 : 88010
來源 : []
最後登入時間 :
2018-11-03 19:18:54
c294. APCS-2016-1029-1三角形辨別 -- 2016年10月APCS | From: [61.216.66.48] | 發表日期 : 2018-11-03 20:00

#include <iostream>
#include <cstdlib>
using namespace std;

int main(){
int a,b,c;
cout << "輸入三邊長";
cin >>a>>b>>c;
if((a*a+b*b)==(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nRight\n";}
else if((a*a+b*b)<(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nObtuse\n";}
else if((a*a+b*b)>(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nAcute\n";}
else if((a*a+b*b)<=(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nNo\n";}

}

 
#15845: Re:為何不行


314159265358979323846264338327 ... (少年π)

學校 : 臺北市私立延平高級中學
編號 : 69058
來源 : [223.137.149.175]
最後登入時間 :
2024-11-18 16:24:11
c294. APCS-2016-1029-1三角形辨別 -- 2016年10月APCS | From: [223.137.113.82] | 發表日期 : 2018-11-03 20:19

#include
#include
using namespace std;

int main(){
int a,b,c;
cout << "輸入三邊長";
cin >>a>>b>>c;
if((a*a+b*b)==(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nRight\n";}
else if((a*a+b*b)<(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nObtuse\n";}
else if((a*a+b*b)>(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nAcute\n";}
else if((a*a+b*b)<=(c*c)){
cout<<a<<" "<<b<<" "<<c<<"\nNo\n";}

}

輸入的邊長並沒有由小排到大
要自己排,然後再判斷

 

 
#15846: Re:為何不行


tang891228 (tang891228)

學校 : 國立成功大學
編號 : 61119
來源 : [140.116.1.138]
最後登入時間 :
2018-09-24 00:20:31
c294. APCS-2016-1029-1三角形辨別 -- 2016年10月APCS | From: [61.227.252.133] | 發表日期 : 2018-11-03 20:23

No 的條件是 {\displaystyle a+b<c},且必須先判斷

此外,a,b,c 不一定是由小到大的,所以要先排序

最後,不可輸出題目沒要求的內容:cout << "輸入三邊長";

 
#15847: Re:為何不行


tang891228 (tang891228)

學校 : 國立成功大學
編號 : 61119
來源 : [140.116.1.138]
最後登入時間 :
2018-09-24 00:20:31
c294. APCS-2016-1029-1三角形辨別 -- 2016年10月APCS | From: [61.227.252.133] | 發表日期 : 2018-11-03 20:26

No 的條件是 {\displaystyle a+b<c},且必須先判斷

筆誤:條件是 {\displaystyle a+b\leq c}

 
ZeroJudge Forum