1. 程式人生 > >C 語言程式設計 6.16 古代《張丘建算經》有道百雞問題。公雞每隻5元,母雞每隻3元,小雞3只一元。用一百元買100只雞,則公雞母雞小雞各能買多少隻。

C 語言程式設計 6.16 古代《張丘建算經》有道百雞問題。公雞每隻5元,母雞每隻3元,小雞3只一元。用一百元買100只雞,則公雞母雞小雞各能買多少隻。

方法一:

注意:這是一百元買100只雞!!!

解題思路:兩個控制條件,一百元,一百隻雞。我們先考慮一百隻雞。

公雞最多買一百隻,母雞最多買一百隻,小雞最多買一百隻。

公雞 + 母雞 + 小雞 = 100只 並且 用了一百元

窮舉法,列出所有的可能性,再 一 一 比較。

#include <stdio.h>
int main()
{
	int x,y,z,i=1;                // x 為公雞的只數,y 為母雞的只數,z 為小雞的只數。i 為自增器

	for (x = 0 ; x <= 100 ; x++ )  //最多能買100雞
	{
		for (y = 0 ; y <= 100 ; y++ ) //最多能買100雞
		 {   
			for (z = 0 ; z <= 100 ; z = z + 3) //最多能買100雞
			 {
				if ( 5*x + 3*y + z/3 == 100 && x + y + z == 100) 
				{
					printf("第%d種情況:公雞%d只,母雞%d只,小雞%d只.\n",i,x,y,z);
					i++;                  // 計算一共有多少種買法。
				}
			 }
		 }
	 }
	printf("\n共有%i種買法\n",i-1);

	return 0 ;
	
}