看板 TransCSI 關於我們 聯絡資訊
這個是增加邊長檢查的版本 #include <stdio.h> int main() { float e[3] , sum = 0 , square_sum = 0 ; int i,max=0; for(i = 0 ; i < 3 ; ) { printf("輸入第 %d 邊的邊長:" , i+1 ); scanf("%f" , e+i ); if( e[i] <= 0 ) { fprintf( stderr , "輸入錯誤!\n"); continue; } max = e[max] > e[i]? max : i ; square_sum += e[i]*e[i]; sum += e[i]; i++; } if( e[max] * 2 >= sum ) printf("不是三角形\n"); else if( e[max] * e[max] * 2 > square_sum ) printf("鈍角三角形\n"); else if( e[max] * e[max] * 2 < square_sum ) printf("銳角三角形\n"); else printf("直角三角形\n"); } 這個是C++的版本 #include <iostream> using std::cout; using std::cerr; using std::cin; using std::endl; int main() { float e[3] , sum = 0 , square_sum = 0 ; int max = 0; for( int i = 0 ; i < 3 ; ) { cout<<"輸入第 "<< i+1 <<" 邊的邊長:"; cin>>e[i]; if( e[i] <= 0 ) { cerr<<"輸入錯誤!"<<endl; continue; } max = e[max] > e[i]? max : i ; square_sum += e[i]*e[i]; sum += e[i]; i++; } if( e[max] * 2 >= sum ) cout<<"不是三角形"<<endl; else if( e[max] * e[max] * 2 > square_sum ) cout<<"鈍角三角形"<<endl; else if( e[max] * e[max] * 2 < square_sum ) cout<<"銳角三角形"<<endl; else cout<<"直角三角形"<<endl; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.168.74.171