前言:
百钱百鸡问题:中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?
翻译成现代文就是我有100块,要买100只鸡,公鸡五块一只,母鸡三块一只,小鸡1块三只
一、穷举法介绍
基本思想:
从所有可能的情况中搜索正确答案;
执行步骤:
1、对于一种可能的情况,计算其结果;
2、判断结果是否满足要求,如果不满足,继续执行第一步来搜索正确答案;如果满足,则找到了一个正确答案;
穷举法效率并不高,适合于一些没有明显规律可循的场合,在使用穷举法时,需要明确问题的答案的范围,这样才可以在指定范围内搜索答案,指定范围之后就可以使用循环语句和条件判断语句逐步验证候选答案的正确性,从而得到需要的正确的答案;
二、代码展示
cock=0 #公鸡
while (cock<=20):
cock+=1
hen=0
while(hen<=30):#母鸡
hen+=1
chicken=0
while(chicken<=100):
if(5*cock+3*hen+chicken/3==100)and (cock+hen+chicken==100):
print("公鸡=%d,母鸡=%d,小鸡=%d"%(cock,hen,chicken))
chicken+=1