C++ Primer Plus P22 编程题二(02_编写程序,输入身高体重,计算BMI)——中职

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

感谢观看

再次感谢~

猜你喜欢

转载自blog.csdn.net/qq_51212951/article/details/113526209