7-1 输出所有水仙花数
输出所有的“水仙花数”。所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为153=1X1X1+5X5X5+3X3X3。
输入格式:
无
输出格式:
输出所有水仙花数,换行隔开
1
2
3
4
5
for a in range(1,10):
for b in range(0,10):
for c in range(0,10):
if str(a)+str(b)+str(c) == str(a*a*a+b*b*b+c*c*c):
print(a*a*a+b*b*b+c*c*c)
7-2 打印水仙花数
打印水仙花数。水仙花数是一个三位数,其各位数字的立方和与原数相等。
输出格式:
按递增顺序输出所有水仙花数,每个数输出占5列。
输出样例:
153 370 371 407
1
2
3
4
5
for a in range(1,10):
for b in range(0,10):
for c in range(0,10):
if str(a)+str(b)+str(c) == str(a*a*a+b*b*b+c*c*c):
print("%5d"%(a*a*a+b*b*b+c*c*c),end='')
7-3 百钱百鸡
1、中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何? 要求: 给出所有的解,每组解占一行 解的顺序:按“字典序”排列,即公鸡数少的在前;公鸡数相同,母鸡数少的在前。
输入格式:
无
输出格式:
cock=%d,hen=%d,chicken=%d\n
1
2
3
4
5
for g in range(0,100):
for m in range(0,100):
for c in range(0,100):
if g * 5 + m * 3 + c/3 *1 == 100 and g+m+c == 100:
print('cock=%d,hen=%d,chicken=%d'%(g,m,c))