百钱百鸡问题

百钱百鸡问题

问题描述:

中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱百鸡问题”:一只公鸡值五钱,一只母鸡值三钱,三只小鸡值一钱,现在要用百钱买百鸡,请问公鸡、母鸡、小鸡各多少只?

设计思路:

利用循环原理解决本题,由题可知讲公鸡,母鸡,小鸡分别设成x,y,z.之后利用穷举法检验{x+y+z=100,5x+3y+z/3=100}。公鸡最多20只,母鸡最多33只,小鸡100只。

流程图如下:

源代码如下

#include<stdio.h>

int main()
{
    int cock=0,hen=0,chicken=0;
	 
    for(cock=0;cock<20;cock++)
        {
            for(hen=0;hen<33;hen++)
            {
                for(chicken=0;chicken<100;)
                {
                    if(cock+hen+chicken==100)
                    {
                    	if(5*cock+3*hen+chicken/3==100)
                    	{
                    		  printf("cock=%d,hen=%d,chicken=%d\n",cock,hen,chicken);
						}
                      
                    }
                    chicken+= 3; 
                }
            }
        }
     
    return 0;
}

结果如下:

cock=0,hen=25,chicken=75
cock=4,hen=18,chicken=78
cock=8,hen=11,chicken=81
cock=12,hen=4,chicken=84
posted @ 2023-04-11 19:49  笠大  阅读(572)  评论(0编辑  收藏  举报