excel学习库

excel表格_excel函数公式大全_execl从入门到精通

用Excel模拟发红包,看看手气最佳会出现在哪个位置!

祝各种小伙伴周末愉快,今天周日,我们用Excel来娱乐一下,模拟一下发红包的算法,100元发10个红包,然后金额分布情况,模拟1万次,看手气最佳分布的位置。 这个算法在工作中的应用场景就是,固定的一个数据,然后生成N个随机数,这N个随机的总和等于这个固定的数据。 首先我们建立辅助项,输入的公式是:=($C$1-SUM($C$2:C2))/($A$1-A2)*2-0.01 C3至C11的公式为:=RANDBETWEEN(1,B3*100)/100 C12的公式为:=C1-SUM(C3:C11)这个公式看起来复杂,其实是来源一个算法思路。 首先B列给定了红包的分布区间最大值,C列的红包是在这个区间内产生随机数。 B列红包区间的定义思路是: 在第1个红包的时候,每个人平均可以拿到100/10=10元,所以第1个红包的金额范围在0.01-19.9元内随机,到第2个红包的时候,后面的人平均可以拿到(100-第1个已领取的4.4)/9,然后第2个红包的金额范围在0.01-2倍平均值之间,以此推下去,最后一个的金额用总金额减掉前面所有的金额,保证了最后一个人的金额至少为0.01根据这个思路,才产生的上述的公式,再去理解的话,就能够理解了。 然后我们计算手气最佳出现在第几个 使用公式计算出现的位置: =MATCH(MAX(C3:C12),C3:C12,0)然后我们模拟10000次,记录这10000次手机最佳出现的位置,这个工作用VBA来完成,我们按ATL+F11,插入一个模块,然后输入代码,运行 Sub 模拟()For i = 1 To 10000Cells(i, "h") = [f1]Next iEnd Sub运行这段代码,得到了1万个手气最佳的数据最后我们用数据透视表也好,用countifs计数也好,我们做了3次1万次的计数分析。从数据的分布情况看,第1个或最后抢红包的人出现手气最佳的概率是大一点,所以大家抢红包的时候都慢点抢吧。。。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接