C++基礎編程DAY14

30、百錢買百雞問題:雞翁一值錢五,雞母一值錢三,雞雛三值錢一,百錢買百雞,問雞翁、母、雛各幾何?

//百錢買百雞問題:雞翁一值錢五,雞母一值錢三,
//雞雛三值錢一,百錢買百雞,問雞翁、母、雛各幾何? 

#include<iostream>
#include<stdlib.h>
#include<ctime>

using namespace std;

//int main()
//{
//	clock_t start_time, end_time;
//	int cock, hen, chick;
//	start_time = clock();
//	for(cock=0; cock<=20; cock++)
//		for(hen=0; hen<34; hen++)
//			//for(chick=0; chick<=300; chick+3)//直接加3,肯定爲整
//			for(chick=0; chick<=300; chick++)
//				if(chick%3 == 0)//小雞總價錢必須是3的倍數
//				{
//					if(cock*5+hen*3+chick/3==100) 
//					{
//						cout << cock << "," << hen << "," << chick << endl;
//					}
//				}
//	end_time = clock();
//	cout << "time:" << clock() << endl;
//	system("pause");
//	return 0;
//}

int main()
{
	//clock_t start_time, end_time;
	int cock, hen, chick;
	//start_time = clock();
	for(cock=0; cock<=20; cock++)
		for(hen=0; hen<34; hen++)
			//for(chick=0; chick<=300; chick+3)//直接加3,肯定爲整 chick+3不是表達式
			for(chick=0; chick<=300; chick+=3)//直接加3,肯定爲整
			{
				if(cock*5+hen*3+chick/3==100) 
				{
					cout << cock << "," << hen << "," << chick << endl;
				}
			}
	//end_time = clock();
	//cout << "time:" << clock() << endl;
	system("pause");
	return 0;
}

附:C++獲取系統時間

C++日期&時間 | 菜鳥教程

#include<iostream>
#include<stdlib.h>
#include<ctime>

using namespace std;

int main()
{
	time_t now = time(0);//1970 到目前經過秒數,時間起算零點1970年1月1日00點00分00秒
	tm *ltm = localtime(&now);
	cout << 1900+ltm->tm_year << endl;//ltm->tm_year表示1900年至今
	cout << 1+ltm->tm_mon << endl;
	cout << ltm->tm_mday << endl;
	cout << ltm->tm_hour << ":" << ltm->tm_min << ":" << ltm->tm_sec << endl;
	system("pause");
	return 0;
}

總結

1、3個未知數,兩個約束條件,所以有多個答案;編程思路:用三個for()循環列出所有可能的cock,hen,chick的數量,判斷總價是否等於100;注意小雞的總價必須爲整數;
2、時間結構在庫ctime中,計算程序運行時間可以用clock();
3、三目運算符使用舉例:x < 0 ? y = 10 : z = 20;

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