import random #引入随机数
money,number=map(int,input("输入红包金额和个数,以逗号隔开:").split(",")) #题目要求逗号隔开
def redpocket(money,number): #定义函数
over=[] #创建数组,存入每个红包金额
n=number #红包个数
k=money #记录总金额,最后一个红包用以减法
if money>0 and money<=200: #红包金额在0-200
for i in range(number):
if n>1: #留下最后一个红包
n-=1
m=random.uniform(0.01,money) #随机红包金额
money=money-m #减去上一个红包金额
m=round(m,2) #保留两位小数
over.append(m) #存入数组
elif n>0: #最后一个红包
n-=1
j=0
for i in range(len(over)):
j+=over[i] #计算除最后一个红包的总金额
j=round(j,2)
m=k-j #计算最后一个红包金额
m=round(m,2)
over.append(m)
return over
else:
print("请输入一个大于0小于200的数")
a=redpocket(money,number)
print(a)
初学者,暂时只会简单算法,当红包个数过多时,此代码可能出现错误,求大佬帮帮
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)