2017年10月6日 星期五

[C_MM38-易] 判斷3整數是否能構成三角形之三邊長(C++)

[C_MM38-易] 判斷3整數是否能構成三角形之三邊長

問題描述:
試撰寫一程式,判斷這三個整數是否能構成三角形的三個邊長(註 : 三角形兩邊長之和必須大於第三邊)。
輸入說明:
輸入為一行字串,包含了三個數值,每個數值以空白隔開。
三個數值分別為三角形的三個邊長。
輸出說明:
輸出符合 (fit) 或不符合 (unfit) 。


先把三個數字排大小,把最小的兩個邊相加,如果大於第三個邊,就符合 (fit),否則不符合 (unfit)

  1. #include <iostream>  
  2. using namespace std;  
  3. //[C_MM38-易] 判斷3整數是否能構成三角形之三邊長  
  4.    
  5. int main() {  
  6.     int a, b, c;  
  7.     while(cin >> a >> b >> c)  
  8.     {  
  9.         if(a > b)  
  10.         {  
  11.             if(b > c) //a > b > c  
  12.             {  
  13.                 if(b+c > a)  
  14.                 {  
  15.                     cout << "fit" << endl;  
  16.                 }  
  17.                 else  
  18.                 {  
  19.                     cout << "unfit" << endl;  
  20.                 }  
  21.             }  
  22.             else  
  23.             {  
  24.                 if(a > c) //a > c > b  
  25.                 {  
  26.                     if(b+c > a)  
  27.                     {  
  28.                         cout << "fit" << endl;  
  29.                     }  
  30.                     else  
  31.                     {  
  32.                         cout << "unfit" << endl;  
  33.                     }  
  34.                 }  
  35.                 else //c > a > b  
  36.                 {  
  37.                     if(a+b > c)  
  38.                     {  
  39.                         cout << "fit" << endl;  
  40.                     }  
  41.                     else  
  42.                     {  
  43.                         cout << "unfit" << endl;  
  44.                     }  
  45.                 }  
  46.             }  
  47.         }  
  48.         else //b > a  
  49.         {  
  50.             if(a > c) //b > a > c  
  51.             {  
  52.                 if(a+c > b)  
  53.                 {  
  54.                     cout << "fit" << endl;  
  55.                 }  
  56.                 else  
  57.                 {  
  58.                     cout << "unfit" << endl;  
  59.                 }  
  60.             }  
  61.             else //b, c > a  
  62.             {  
  63.                 if(b > c) //b > c > a  
  64.                 {  
  65.                     if(a+c > b)  
  66.                     {  
  67.                         cout << "fit" << endl;  
  68.                     }  
  69.                     else  
  70.                     {  
  71.                         cout << "unfit" << endl;  
  72.                     }     
  73.                 }  
  74.                 else //c > b > a  
  75.                 {  
  76.                     if(a+b > c)  
  77.                     {  
  78.                         cout << "fit" << endl;  
  79.                     }  
  80.                     else  
  81.                     {  
  82.                         cout << "unfit" << endl;  
  83.                     }  
  84.                 }  
  85.             }  
  86.         }  
  87.     }  
  88.     return 0;  
  89. }  


沒有留言:

張貼留言