【第三章】C++ Primer plus 的編程練習題(選取部分)

/***********************************
	2017年9月26日16:56:31
	Athor:xiyuan255
	Course:C++
	Contain:myfirst.cpp
	Reference: C++ Primer plus
	說明:C++ Primer plus第三章的練習題(選取部分) 
	     【 P69 】
*************************************/
// review3.cpp -- C++ Primer plus 第三章練習題

#include <iostream>

using namespace std;

void exampleNo2(void); 
void exampleNo3(void); 
void exampleNo4(void); 
void exampleNo7(void); 

int main(void)
{
	//exampleNo2(); // example 2 test
	//exampleNo3(); // example 3 test
	//exampleNo4(); // example 4 test
	exampleNo7(); // example 7 test

	return 0;
}


void exampleNo7(void)
{
	cout << "請按歐洲風格輸入汽車的耗油率(升/100km):";
	double mile_kilome;
	cin >> mile_kilome; 
	const double Litre = 3.875;
	const double Mile = 62.14;
	double gallon = mile_kilome / Litre;
	int mpg = int(Mile / gallon);
	cout << "轉化成美國風格的耗油量(每加侖多少英里):"
		 << mpg << "mpg.\n";
}
/**
輸出結果:
	請按歐洲風格輸入汽車的耗油率(升/100km):12.41
	轉化成美國風格的耗油量(每加侖多少英里):19mpg.
*/


void exampleNo4(void)
{
	cout << "Enter the number of seconds: ";
	long long seconds;
	cin >> seconds;
	const short Hour = 24;
	const short Minute = 60;
	const short Second = 60;
	int days = seconds / (Hour * Minute * Second);
	int hours = seconds % (Hour * Minute * Second) / (Minute * Second);
	int mintes = (seconds % (Hour * Minute * Second)) % (Minute * Second) / Second;
	int second = seconds % Second;

	cout << seconds << " seconds = " << days << " days, " << hours << " hours, "
		 << mintes << " mintues, " << second << " seconds.\n";

}
/**
輸出結果:
	Enter the number of seconds: 31600000
	31600000 seconds = 365 days, 17 hours, 46 mintues, 40 seconds.
*/


void exampleNo3(void)
{
	cout << "Enter a latitude in degrees, minutes and seconds: \n";
	cout << "First, enter the degrees: ";
	int degrees;
	cin >> degrees;
	cout << "Next, enter the minutes of arc: ";
	int minutes;
	cin >> minutes;
	cout << "Finally, enter the seconds of arc: ";
	int seconds;
	cin >> seconds;

	const int Minute = 60;
	const int Second = 60;
	double degre = double(degrees) + double((double)minutes/Minute)
	               + double((double)seconds/(Second * Minute));
	cout << degrees << " degrees, " << minutes << " mintes, "
	     << seconds << " seconds = " << degre << " degrees.\n";
}
/**
輸出結果:
	Enter a latitude in degrees, minutes and seconds:
	First, enter the degrees: 37
	Next, enter the minutes of arc: 51
	Finally, enter the seconds of arc: 19
	37 degrees, 51 mintes, 19 seconds = 37.8553 degrees.
*/


void exampleNo2(void)
{
	cout << "以幾英尺幾英寸的方式輸入身高,"
		 << "並以磅爲單位輸入其體重:\n";
	cout << "英尺:";
	int feets = 0;
	cin >> feets;
	cout << "英寸:";
	int inchs = 0;
	cin >> inchs;
	cout << "體重:";
	int pounds;
	cin >> pounds;

	const short British = 12;
	const float Metric = 0.0254f;
	const float Pound = 2.2f;
	double meter = double (Metric * (feets * British + inchs));
	double kilogram = double (pounds / Pound);
	double BMI = double (pow(kilogram/meter, 2));
	cout << "meter = " << meter << ", kilogram = " << kilogram << endl;
	cout << "BMI = " << BMI << " Done!\n";

}
/**
輸出結果:
	以幾英尺幾英寸的方式輸入身高,並以磅爲單位輸入其體重:
	英尺:5
	英寸:10
	體重:130
	meter = 1.778, kilogram = 59.0909
	BMI = 1104.53 Done!
*/


發佈了76 篇原創文章 · 獲贊 11 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章