返回列表 發帖

計算 BMI

本帖最後由 鄭繼威 於 2022-9-17 14:20 編輯

設計一程式計算使用者的BMI值,並給予評論。
關於BMI值的計算可參考這裡
公式:體重/身高(公尺)(平方)

(上下限可以自己設定)

評論參考:
"體重過輕!!你需要多吃點喔!"
"正常範圍!!繼續保持!"
"過重!!唔..該減肥了!"
"輕度肥胖!!太胖了!這樣會交不到男(女)朋友!"
"中度肥胖!!去操場跑個十圈再回來!"
"重度肥胖!!你需要立即注意你的飲食,因為你的生命正受到嚴重威脅!"
"不要再玩了啦! 你是怪物嗎? 再胡鬧小心我扁你!"

用if-else判斷
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     string name;
  7.     float h,w,bmi;
  8.     cout<<"***歡迎使用小米的BMI值計算機***"<<endl<<endl;
  9.     cout<<"請輸入你的大名: ";
  10.     cin>>name;

  11.     cout<<"請輸入你的身高(公分): ";
  12.     cin>>h;
  13.     h=h/100;

  14.     cout<<"請輸入你的體重(公斤): ";
  15.     cin>>w;

  16.     bmi=w/(h*h);

  17.     cout<<endl<<"親愛的"<<name<<",你的BMI值為: "<<bmi<<endl;

  18.     //if-else判斷
  19.     if(bmi>=10 && bmi<18.5)
  20.         cout<<"體重過輕!!你需要多吃點喔!"<<endl;
  21.     else if(bmi>=18.5 && bmi<24)
  22.         cout<<"正常範圍!!繼續保持!"<<endl;
  23.     else if(bmi>=24 && bmi<27)
  24.         cout<<"過重!!唔..該減肥了!"<<endl;
  25.     else if(bmi>=27 && bmi<30)
  26.         cout<<"輕度肥胖!!太胖了!這樣會交不到男(女)朋友!"<<endl;
  27.     else if(bmi>=30 && bmi<35)
  28.         cout<<"中度肥胖!!去操場跑個十圈再回來!"<<endl;
  29.     else if(bmi>=35 && bmi<70)
  30.         cout<<"重度肥胖!!你需要立即注意你的飲食,因為你的生命正受到嚴重威脅!"<<endl;
  31.     else
  32.         cout<<"不要再玩了啦! 你是怪物嗎? 再胡鬧小心我扁你!"<<endl;
  33.     cout<<endl;
  34.     system("pause");
  35.     return 0;
  36. }
複製代碼
用switch-case判斷
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     string name;
  7.     float h,w,bmi;
  8. //    int bmi;
  9.     cout<<"***歡迎使用小米的BMI計算機***"<<endl<<endl;
  10.     cout<<"請輸入你的大名: ";
  11.     cin>>name;
  12.    
  13.     cout<<"請輸入你的身高(公分): ";
  14.     cin>>h;
  15.     h=h/100;
  16.    
  17.     cout<<"請輸入你的體重(公斤): ";
  18.     cin>>w;
  19.    
  20.     bmi=w/(h*h);
  21.    
  22.     cout<<endl<<"親愛的"<<name<<",你的BMI值為: "<<bmi<<endl;
  23.    
  24.     //switch-case判斷
  25.     switch(bmi){
  26. //            case 10 ... 18.5:
  27. //            cout<<"體重過輕"<<endl;
  28. //            break;
  29. //        case 18.5 ... 24:
  30. //            cout<<"正常範圍"<<endl;
  31. //            break;
  32.         case 24 ... 26:
  33.             cout<<"過重"<<endl;
  34.             break;
  35.         case 27 ... 29:
  36.             cout<<"輕度肥胖"<<endl;
  37.             break;
  38.         case 30 ... 34:     
  39.             cout<<"中度肥胖"<<endl;
  40.             break;
  41.         case 35 ... 70:     
  42.             cout<<"重度肥胖"<<endl;
  43.             break;
  44.         default:
  45.             cout<<"輸入錯誤"<<endl;       
  46.         }     
  47.       
  48.     system("pause");
  49.     return 0;
  50. }   
複製代碼
switch-case的小問題:
要判斷的變數只能是整數(int)及字元(char)
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

返回列表