题目的主要信息:
- 输入体重(单位千克),身高(单位米)信息,根据计算出的BMI求出所属范围
- BMI小于 18.5 属于"偏瘦",大于等于 18.5 小于 20.9 属于"苗条",大于等于 20.9 小于等于 24.9 属于"适中",超过 24.9 属于"偏胖"
具体做法:
,单位刚好是题目输入的千克和米。
根据输入的两个信息体重和身高,我们利用除法和乘法计算BMI值,然后利用连续的判断语句确定BMI所属范围,根据所属范围输出相应的中文描述。 要注意范围的边界,有的是没有取等号有的是取了等号,图中数字再哪边哪边就取等
#include <iostream>
using namespace std;
int main() {
double weight;
double height;
cin >> weight;
cin >> height;
double bmi = weight / (height * height); //BMI公式
//判断组别
if(bmi < 18.5)
cout << "偏瘦" << endl;
else if(bmi >= 18.5 && bmi < 20.9) //两个条件的用与
cout << "苗条" << endl;
else if(bmi >= 20.9 && bmi <= 24.9)
cout << "适中" << endl;
else
cout << "偏胖" << endl;
return 0;
}
复杂度分析:
- 时间复杂度:,直接计算,直接判断,没有循环,常数时间
- 空间复杂度:,直接计算,常数个变量,无额外空间