C++ Primer Plus P22 编程题二
编写一个小程序,要求以几英尺英寸的方式输入其身高,并以磅为单位输入其体重(使用3个变量来存储这些信息)。
该程序可以报告体重指数(Body Mass Index, BMI)。
为了计算BMI,该程序以英寸为单位指出用户的身高(1英尺 = 12英寸),
并将以英寸为单位的身高转换为米为单位的身高(1英寸 = 0.0254米)。然后,将以磅为单位的体重转换为以千克为单位的体重(1千克 = 2.2磅)。
最后,计算相应的BMI,即体重(单位是千克)除以身高(单位是米)的平方。用符号常量表示各种转换因子。
1英寸 = 0.0254米
1英尺 = 12英寸
1千克 = 2.2磅
1公斤 = 2斤
1斤 = 500g
/*
C++ Primer Plus P22 编程题二
编写一个小程序,要求以几英尺英寸的方式输入其身高,并以磅为单位输入其体重(使用3个变量来存储这些信息)。
该程序可以报告体重指数(Body Mass Index, BMI)。
为了计算BMI,该程序以英寸为单位指出用户的身高(1英尺 = 12英寸),
并将以英寸为单位的身高转换为米为单位的身高(1英寸 = 0.0254米)。然后,将以磅为单位的体重转换为以千克为单位的体重(1千克 = 2.2磅)。
最后,计算相应的BMI,即体重(单位是千克)除以身高(单位是米)的平方。用符号常量表示各种转换因子。
1英寸 = 0.0254米
1英尺 = 12英寸
1千克 = 2.2磅
1公斤 = 2斤
1斤 = 500g
*/
//头文件
#include<iostream>
#include<cmath>
//转换因子
const float KILOGRAM_TO_POUND = 2.2;
const int FOOT_TO_INCH = 12;
const float INCH_TO_METER = 0.0254;
//工具
void inch(void) //身高转换
{
using namespace std; //编译指令
float height;
cout << "输入你的身高(厘米):"; //提示用户输入常规身高
cin >> height; //输入
height = height / 100; //将厘米转换为米
height = height / 0.0254f; //米换算成总英寸
cout << "你的身高(英尺)是:" << int(height) / FOOT_TO_INCH; //英寸换算成英尺
cout << " 英寸是:" << int(height) % FOOT_TO_INCH << endl << endl; //计算几英尺几英寸的英寸
}
void weight(void)
{
using namespace std; //编译指令
float wei;
cout << "输入你的体重(斤):"; //提示用户输入常规体重
cin >> wei; //输入
cout << "你的体重为(kg):" << wei / 2 << endl << endl; //将斤换算成公斤(1kg)
}
//主函数
int main(void)
{
inch(); //提示用户(以厘米衡量身高的用户)相对应的英寸
weight(); //提示用户(以斤衡量体重的用户)相对于的kg
using namespace std; //编译指令
int inch, food, height;
float weight_pound, weight;
double BIM;
cout << "输入你的英尺:"; //提醒用户输入英尺
cin >> food; //输入
cout << "输入你的英寸:"; //提醒用户输入英寸
cin >> inch; //输入
cout << "输入你的体重(kg):"; //提醒用户输入体重
cin >> weight_pound; //输入
cout << "你当前的身高总英寸是:" << (height = food * FOOT_TO_INCH + inch); //转换显示总英寸
height = height * INCH_TO_METER; //将英寸换算成米
weight = weight_pound * KILOGRAM_TO_POUND; //将kg换算成磅
BIM = weight / pow(height, 2); //计算BIM的值
cout << endl << "你的BIM值为:" << BIM << endl; //输出结果
return 0;
}
本程序有两个是用于方便理解的程序工具:
第一个身高转换工具(本程序需要用几英尺几英寸来表示身高):
//工具
void inch(void) //身高转换
{
using namespace std; //编译指令
float height;
cout << "输入你的身高(厘米):"; //提示用户输入常规身高
cin >> height; //输入
height = height / 100; //将厘米转换为米
height = height / 0.0254f; //米换算成总英寸
cout << "你的身高(英尺)是:" << int(height) / FOOT_TO_INCH; //英寸换算成英尺
cout << " 英寸是:" << int(height) % FOOT_TO_INCH << endl << endl; //计算几英尺几英寸的英寸
}
第二个体重转换工具(本程序需要以千克来表示体重):
void weight(void)
{
using namespace std; //编译指令
float wei;
cout << "输入你的体重(斤):"; //提示用户输入常规体重
cin >> wei; //输入
cout << "你的体重为(kg):" << wei / 2 << endl << endl; //将斤换算成公斤(1kg)
}
其他的都是代入公式即可
结果为(个人数据因人而异):
输入你的身高(厘米):170
你的身高(英尺)是:5 英寸是:6
输入你的体重(斤):110
你的体重为(kg):55
输入你的英尺:5
输入你的英寸:6
输入你的体重(kg):55
你当前的身高总英寸是:66
你的BIM值为:121
感谢观看
再次感谢~
扫描二维码关注公众号,回复:
12888208 查看本文章
![](/qrcode.jpg)