excel学习库

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

程序员编写程序,模拟十万次彩票中一等奖的耗时,结果难以置信!

估计很多人都做过跟我一样的梦,那就是梦见自己买彩票中了五百万!但是,梦归梦,现实归现实。现实当中,大家都知道彩票的中奖概率很低,甚至有人直接给出了彩票的中奖概率约为两千一百四十二万分之一,可是,光看这个概率也很难对中奖的“难”有什么概念。于是,作为程序员,我通过代码的形式来告诉你,作为个人,你如果想要中彩票一等奖,究竟有多难!难到让您无法相信!

本文旨在使用代码模拟彩票中奖来体现彩票中一等奖的难度(注意是一等奖),并无它意。因为用来模拟的测试数据有限,因此测试结果仅供参考,若在阅读本文过程中产生其他联想,我深表遗憾!

彩票规则和测试规则

在写代码之前,我需要选定一个已知的彩票规则来模拟,因此,我选取的彩票的开奖规则为:

  • 前区总共35个号码,选取其中5个号码。
  • 后区总共12个号码,选取其中2个号码。
  • 彩票分别为每周一、周三、周六开奖(节假日不忽略)。
  • 当选取的前区号码和后区号码与开奖号码一致的时候,即中得一等奖。

而我的测试规则为:

  • 选取一个固定号码,作为自己的彩票号码。
  • 以一周七天作为一个循环,分别在周一、周三、周六随机开奖。一直到开奖号码与固定彩票号码一致为止。
  • 当中奖后,重新进行下一轮循环,固定彩票号码不变,一直到中十万次为止。

测试意图

我的意图很明显,就是想知道十万个人里面,中一等奖最低需要耗时多少天、年,最高需要耗时多少天、年,平均需要耗时多少天、年以及其他相关数据。

测试过程

我在程序中设定,当程序每模拟到一次中奖,就会在一个文本文档中记录直至该次中奖的总人数、当前中奖耗时天数、当前中奖耗时年数。最后,我会将文档中的数据拿到Excel中进行分析。

当我写完代码以后,我以为我能很快获得测试结果,但是,谁知道当我运行我编写的程序以后,发现想要模拟中奖一次,我大概需要等个几秒,当一次中奖耗时比较长时,我需要等待更长的时间。

为了不耽误工作,所以我将模拟程序放到了我自己的服务器上去执行。因为我自己的服务器配置比较差,我开始有心理准备,觉得过不了多久我就应该能够得到我想要的数据了!

但是,让我没有想到的是,这个程序在我的服务器上足足执行了有五天之久!

数据分析

尽管耗时比较久,但是我还是拿到了我想要的十万条数据,并且,我在得到这些数据以后,立马就使用了Excel对数据进行了分析,下面是基于十万条数据的分析结果;

耗时总天数、总年数

可以看到,天数已经溢出了Excel可以容纳的最大数字,但是,通过总年数97 7351 5155,我们大概可以算出来,十万次中奖所消耗的天数约为3 5673 3303 1575天!

总耗时最小、最大天数

此时,我们就看到了一位“幸运儿”,只使用了91天就中得了一等奖,但是,这十万条数据中还有一个“倒霉蛋”,总共耗时459473442天才中得一等奖。

总耗时最小、最大年数

这里的最小年数和最大年数是基于上面的天数算出来的,所以结果就是耗时最短为0年,最长的为1258831年,按照人均100岁来算的话,想要中奖,这个“倒霉蛋”至少需要活12588辈子!

总耗时平均天数、年数

通过这十万条数据,我们算出来中奖的平均天数为35673869.41天,平均年数为42869年,也就是说,大多数人想要中一等奖,需要活至少420辈子!

耗时最短TOP30

为了给大家一点希望,我算出了这十万次中奖耗时最短的前30个数据。

可以看到,前30名数据中,出现了三名耗时1年左右的,最大耗时为19年。

代码

代码使用CSharp编写,看不懂的可以忽略,看得懂的同行可以给点意见。

总结

彩票是公益性质的,为了支持公益事业,平时花点小钱买买无可厚非。但是,千万不要以赌的心态去买彩票,此举不光得不到自己想要的结果,还侮辱了公益事业。

因此,想要靠买彩票发财的,我劝您尽早醒醒!

发表评论:

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

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