本帖最後由 鄭繼威 於 2022-9-17 14:20 編輯
設計一程式計算使用者的BMI值,並給予評論。
關於BMI值的計算可參考這裡
公式:體重/身高(公尺)(平方)
(上下限可以自己設定)
評論參考:
"體重過輕!!你需要多吃點喔!"
"正常範圍!!繼續保持!"
"過重!!唔..該減肥了!"
"輕度肥胖!!太胖了!這樣會交不到男(女)朋友!"
"中度肥胖!!去操場跑個十圈再回來!"
"重度肥胖!!你需要立即注意你的飲食,因為你的生命正受到嚴重威脅!"
"不要再玩了啦! 你是怪物嗎? 再胡鬧小心我扁你!"
用if-else判斷- #include<iostream>
- #include<cstdlib>
- using namespace std;
- int main()
- {
- string name;
- float h,w,bmi;
- cout<<"***歡迎使用小米的BMI值計算機***"<<endl<<endl;
- cout<<"請輸入你的大名: ";
- cin>>name;
- cout<<"請輸入你的身高(公分): ";
- cin>>h;
- h=h/100;
- cout<<"請輸入你的體重(公斤): ";
- cin>>w;
- bmi=w/(h*h);
- cout<<endl<<"親愛的"<<name<<",你的BMI值為: "<<bmi<<endl;
- //if-else判斷
- if(bmi>=10 && bmi<18.5)
- cout<<"體重過輕!!你需要多吃點喔!"<<endl;
- else if(bmi>=18.5 && bmi<24)
- cout<<"正常範圍!!繼續保持!"<<endl;
- else if(bmi>=24 && bmi<27)
- cout<<"過重!!唔..該減肥了!"<<endl;
- else if(bmi>=27 && bmi<30)
- cout<<"輕度肥胖!!太胖了!這樣會交不到男(女)朋友!"<<endl;
- else if(bmi>=30 && bmi<35)
- cout<<"中度肥胖!!去操場跑個十圈再回來!"<<endl;
- else if(bmi>=35 && bmi<70)
- cout<<"重度肥胖!!你需要立即注意你的飲食,因為你的生命正受到嚴重威脅!"<<endl;
- else
- cout<<"不要再玩了啦! 你是怪物嗎? 再胡鬧小心我扁你!"<<endl;
- cout<<endl;
- system("pause");
- return 0;
- }
複製代碼 用switch-case判斷- #include<iostream>
- #include<cstdlib>
- using namespace std;
- int main()
- {
- string name;
- float h,w,bmi;
- // int bmi;
- cout<<"***歡迎使用小米的BMI計算機***"<<endl<<endl;
- cout<<"請輸入你的大名: ";
- cin>>name;
-
- cout<<"請輸入你的身高(公分): ";
- cin>>h;
- h=h/100;
-
- cout<<"請輸入你的體重(公斤): ";
- cin>>w;
-
- bmi=w/(h*h);
-
- cout<<endl<<"親愛的"<<name<<",你的BMI值為: "<<bmi<<endl;
-
- //switch-case判斷
- switch(bmi){
- // case 10 ... 18.5:
- // cout<<"體重過輕"<<endl;
- // break;
- // case 18.5 ... 24:
- // cout<<"正常範圍"<<endl;
- // break;
- case 24 ... 26:
- cout<<"過重"<<endl;
- break;
- case 27 ... 29:
- cout<<"輕度肥胖"<<endl;
- break;
- case 30 ... 34:
- cout<<"中度肥胖"<<endl;
- break;
- case 35 ... 70:
- cout<<"重度肥胖"<<endl;
- break;
- default:
- cout<<"輸入錯誤"<<endl;
- }
-
- system("pause");
- return 0;
- }
複製代碼 switch-case的小問題:
要判斷的變數只能是整數(int)及字元(char)
|