百钱买百鸡——c语言算法实现

题目:


鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?

一百个铜钱买了一百只鸡,其中公鸡一只5钱、母鸡一只3钱,小鸡一钱3只,问一百只鸡中公鸡、母鸡、小鸡各多少。


解析:

要解这道题就得找出题目中所包含的所有等量关系,从题目标题中可以找到两个:“百钱”、“百鸡”,若我们设公鸡、母鸡、小鸡分别为x、y、z只,则有以下等式:x+y+z=100,5x+3y+(1/3)z=100,为了减少程序运行的时间,我们也应对x、y、z的范围进行缩小,即:0 <= x <= 20,0 <= y <=33,0 <= z <=99,理清这些关系,下面就可以写代码了:


#include "stdio.h"

void main()

{
	int x,y,z;							//定义三种鸡
	for (x = 0;x <= 20;x++)				//枚举公鸡
	{
		for (y = 0;y <= 33;y++)			//枚举母鸡
		{
			for (z = 0;z <= 99;z++)		//枚举小鸡
			{
				if(15*x + 9*y + z == 300 && x + y + z == 100)
					printf("公鸡:%d,母鸡:%d,小鸡:%d\n",x,y,z);
			}
		}
	}
}


运行结果如图:


百钱买百鸡——c语言算法实现_第1张图片


你可能感兴趣的:(其他算法)