level 15
TY94
楼主
直接上代码
#引入随机函数
import random
#执行10亿次
Max = 1000000000
#出货概率2.4%
p = 0.024
count = 1
#出货计数
get = 0
#保底计数
floors = 50
#可以改用for in range的方式
while count <= Max:
#如果到保底了,或者随机数小于P,就算出货,保底重置,没有等于是因为random()取值是[0,1)
if floors == 0 or random.random() < p :
get += 1
floors = 50
#如果没出货,刷新保底计数
else:
floors -= 1
count += 1
print("平均每个箱子出货期望:", get/Max)
print("50个箱子出货期望:", get/Max * 50)
结果是:

2021年12月09日 08点12分
1
#引入随机函数
import random
#执行10亿次
Max = 1000000000
#出货概率2.4%
p = 0.024
count = 1
#出货计数
get = 0
#保底计数
floors = 50
#可以改用for in range的方式
while count <= Max:
#如果到保底了,或者随机数小于P,就算出货,保底重置,没有等于是因为random()取值是[0,1)
if floors == 0 or random.random() < p :
get += 1
floors = 50
#如果没出货,刷新保底计数
else:
floors -= 1
count += 1
print("平均每个箱子出货期望:", get/Max)
print("50个箱子出货期望:", get/Max * 50)
结果是:

