php伪随机数 ctf,有没有人怀疑过 rand()函数得到的随机数并不随机?

我下载了国外某权威抽奖网站的 300 万期开奖号码的数据,然后自己用 rand()根据开奖规则随机产生了一些号码作为开奖号码,也是 300 万期,分析某个数值比如 9 隔多长时间出现一次的概率,发现有较为明显的差别:

这是彩票网站统计的数据:

90--1--0.0004% (意思是隔 90 期才出现 1 次,概率 0.0004%)

89--0--0%

88--0--0%

87--1--0.0004%

86--2--0.0007%

85--0--0%

84--0--0%

83--0--0%

82--1--0.0004%

81--0--0%

80--0--0%

79--1--0.0004%

78--1--0.0004%

77--1--0.0004%

76--0--0%

75--1--0.0004%

74--1--0.0004%

73--3--0.0011%

72--7--0.0026%

71--2--0.0007%

70--2--0.0007%

69--3--0.0011%

68--11--0.0041%

67--2--0.0007%

66--9--0.0034%

65--8--0.003%

64--11--0.0041%

63--11--0.0041%

62--10--0.0037%

61--4--0.0015%

60--13--0.0049%

59--14--0.0052%

58--14--0.0052%

57--21--0.0078%

56--21--0.0078%

55--18--0.0067%

54--17--0.0064%

53--24--0.009%

52--41--0.0153%

51--42--0.0157%

50--38--0.0142%

49--57--0.0213%

48--76--0.0284%

47--86--0.0321%

46--86--0.0321%

45--100--0.0374%

44--116--0.0433%

43--130--0.0486%

42--144--0.0538%

41--153--0.0572%

40--168--0.0628%

39--227--0.0848%

38--227--0.0848%

37--284--0.1061%

36--347--0.1297%

35--353--0.1319%

34--431--0.1611%

33--491--0.1835%

32--523--0.1954%

31--596--0.2227%

30--704--0.2631%

29--802--0.2997%

28--931--0.3479%

27--962--0.3595%

26--1161--0.4338%

25--1321--0.4936%

24--1536--0.574%

23--1755--0.6558%

22--2009--0.7507%

21--2305--0.8613%

20--2769--1.0347%

19--3096--1.1569%

18--3465--1.2948%

17--3917--1.4637%

16--4508--1.6845%

15--5280--1.973%

14--5922--2.2129%

13--6769--2.5294%

12--7779--2.9068%

11--8770--3.2771%

10--10043--3.7528%

9--11553--4.317%

8--12872--4.8099%

7--15013--5.6099%

6--17385--6.4962%

5--19536--7.3%

4--22339--8.3474%

3--25558--9.5502%

2--29304--10.95%

1--33414--12.4858%

下面是我用 rand 生成的开奖号码中该数值的统计:

90--0--0%

89--0--0%

88--0--0%

87--0--0%

86--0--0%

85--0--0%

84--0--0%

83--0--0%

82--0--0%

81--0--0%

80--0--0%

79--0--0%

78--66--0.0247%(注意这里)

77--0--0%

76--0--0%

75--0--0%

74--0--0%

73--0--0%

72--0--0%

71--0--0%

70--0--0%

69--0--0%

68--0--0%

67--0--0%

66--0--0%

65--0--0%

64--0--0%

63--0--0%

62--0--0%

61--0--0%

60--0--0%

59--65--0.0243%(注意这里)

58--0--0%

57--0--0%

56--0--0%

55--131--0.049%(注意这里)

54--0--0%

53--0--0%

52--0--0%

51--0--0%

50--65--0.0243%(注意这里)

49--66--0.0247%(注意这里)

48--0--0%

47--0--0%

46--0--0%

45--131--0.049%

44--131--0.049%

43--66--0.0247%

42--65--0.0243%

41--261--0.0975%

40--0--0%

39--327--0.1222%

38--130--0.0486%

37--326--0.1218%

36--459--0.1715%

35--524--0.1958%

34--459--0.1715%

33--523--0.1954%

32--721--0.2694%

31--523--0.1954%

30--196--0.0732%

29--1044--0.3901%

28--918--0.343%

27--652--0.2436%

26--1376--0.5142%

25--1572--0.5874%

24--1437--0.537%

23--1568--0.5859%

22--2426--0.9065%

21--2229--0.8329%

20--2620--0.979%

19--3471--1.297%

18--3338--1.2473%

17--3666--1.3699%

16--3795--1.4181%

15--5760--2.1523%

14--5952--2.2241%

13--6550--2.4475%

12--8180--3.0566%

11--9493--3.5472%

10--10683--3.9919%

9--11662--4.3577%

8--13614--5.0871%

7--15721--5.8744%

6--14404--5.3823%

5--19586--7.3187%

4--22190--8.2917%

3--26386--9.8596%

2--28525--10.6589%

1--33564--12.5418%

这么大的差别,足以证明 rand 并不是很靠谱的随机函数吧

纯技术分析,别骂我闲得蛋疼.... /:哭笑

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值