在马克思手稿中有一道趣味的数学问题:一共有30个人。可能包括男人、女人和小
孩,他们在一家饭馆吃饭共花了 50先令,其中每个男人花3先令,每个女人花2先令,每个小孩花1先令。请问男人,女人和小孩各几人?请编写一个程序来计算。
提示:
定义三个变量men、women和kids分别表示男人数,女人数和小孩数,可以得到如下两个关系。
men + women + kids =30;
3men + 2women + kids = 50
男人数i的范围是0<=men<=10,利用循环实现
for i in range(11):
for j in range(0, 31):
for k in range(0, 31):
if i+j+k==30 and i*3+j*2+k==50:
print(i, j, k)
结果
0 20 10
1 18 11
2 16 12
3 14 13
4 12 14
5 10 15
6 8 16
7 6 17
8 4 18
9 2 19
10 0 20
men = 0
women = 0
kids = 0
for i in range(10):
men = i
women = 20 - 2 * men
kids = 10 + men
if men + women + kids == 30:
break
print("男人 = {},女人 = {},小孩 = {}".format(men,women,kids))
如果觉得答案对你有帮助,请点击下采纳,谢谢~