问:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡,母鸡,小鸡,都必须有,问各买多少只鸡刚好凑足100文钱?
循环法:
for x in range(1,100//5):
for y in range(1,100//3):
for z in range(1,100):
if x + y + z ==100 and 5*x + 3*y + z/3 == 100:
print(x,y,z)
输出:
4 18 78
8 11 81
12 4 84
随机法
(得到的结果是随机的):
gongji_shu_list = [v for v in range(1, 100)]
muji_shu_list = [v for v in range(1, 100)]
zong_qian = 0
gongji_shu = 1
muji_shu = 1
xiaoji_shu = 1
while zong_qian != 100:
gongji_shu = random.choice(gongji_shu_list)
muji_shu = random.choice(muji_shu_list)
xiaoji_shu = 100 - gongji_shu - muji_shu
zong_qian = 5 * gongji_shu + 3 * muji_shu + 1 / 3 * xiaoji_shu
else:
print(gongji_shu,muji_shu,xiaoji_shu)
输出:
8 11 81