'''2.输入一个小于等于1000的整数总金额,等价的表示成各种面额的张数,使得张数最少,/
可以提供的面额分别是100、50、20、10、5、1元。
例如输入145时,输出如下:100 圆: 1 张,20圆: 2 张,5圆: 1 张。'''
money=int(input("请输入一个小于等于1000的整数总金额:"))
a=money//100#100圆张数
b=money%100//50#50圆张数
c=money%50//20#20圆张数
d=money-a*100-b*50-c*20
e=d//10#10圆张数
f=d%10//5#5圆张数
g=d%5#1圆张数
list1=[a,b,c,e,f,g]
list2=[100,50,20,10,5,1]
for x in range(6):
if list1[x]!=0:
print("%d圆:%d 张"%(list2[x],list1[x]))
在这一题中,我想到了使用列表来取代冗杂的循环