第一道题是输入应付金额与实付金额,实现找零。
如:
输入:26.5 50
输出:23.5 10:2;1:3;0.5:1;
输入:27 50
输出:23.0 10:2;1:3;
def cash(money, my_list):
for x in my_list:
my_val = money % x
my_count = int(money / x)
if my_val >= 0 and my_count != 0:
res.append(str(x)+':'+str(my_count))
money = my_val
m.append(money)
if money == 0:
return
return
if __name__ == '__main__':
zb = [10, 5]
yb = [1, 0.5]
res = []
m = []
yf = float(input("请输入应付金额:"))
sf = float(input("请输入实付金额:"))
zl = sf - yf
if zl > 0:
print(zl,end=' ')
cash(zl, zb)
cash(m[-1], yb)
for x in res:
print(x,end=';')
第二道题是输入一个仅包含且不重复的A-E的字符串,每个字符串对应三个播放列表,输出带有该字符串的播放列表。
如:
输入:A
输出:A1 A2 A3
输入:AC
输出:A1C1 A1C2 A1C3 A2C1 A2C2 A2C3 A3C1 A3C2 A3C3
import itertools
hashm={"A":['A1','A2','A3'],
"B":['B1','B2','B3'],
"C":['C1','C2','C3'],
"D":['D1','D2','D3'],
"E":['E1','E2','E3']}
a=input("请输入一个仅包含且不重复的A-E的字符串:")
m=[]
for i in a:
m.append(hashm[i])
res=[''.join(i)for i in itertools.product(*m)]
for x in res:
print(x,end=' ')