谈质数的分布
质数定义:只能被1或自身整除的自然数,叫质数(又称素数,下同)。
根据这一定义,很容易就得出大于10的质数的尾数只能是1、3、7、9中的一个,2和5这两质数属于特例。
按此定义用VF编程,经过约100余小时的计算,从小到大依次排列,共找到了3134万个质数。最大的一个质数为 600306589。在1~6亿内有质数31324703个,最大的一个就是599999971(如果愿意划时间,还可找到更多的质数)。
从理论上说,只要找出3亿2千万以前的所有质数后,以此为基础就可找出所有18位以下的全部质数,但实际上一般电脑很难胜任,因一个有1700万个质数的数据表大小超过近300M(只设序号:长度8位,质数:长度9位),而在100,000,000,000,000,000(10亿亿)内的质数个数近5千万亿个,这要2千多万个数据表,这显然不是普通电脑能胜任的。但可对这当中的任意一个数进行验算是否为质数。
对于17位及以上的质数,普通电脑已不能计算了,因电脑的计算精度只有16位,对16位以上的是采用四舍五入的科学计算法计算了,即近似计算,而计算质数由是要精确计算的,不能四舍五入。
质数的分布
以100为尺度来看:在0~100内质数最多达25个;100~200内有21个;之后即呈震荡下降,4100~4200后就有个位数出现了,继续震荡下降;一万以后基本上是个位为主的震荡缓慢下降,一百万之后基本上是以数字5为中心的震荡分布,中间也有个别段(如: 1671800~1671900,不止一段)内的数字为零。
以1000为尺度来看:在0~1000内质数最多达168个,1000~2000内质数是135个,之后呈震荡下降;从43000之后,就震荡下降到两位数了,逐渐震荡下降到以50为中心了。
以10000为尺度来看:在0~10000内质数最多达1229个,10000~20000内质数是1033个,之后呈震荡下降,逐渐震荡下降到以500为中心了。
以上尺度空间偏小,难以看出规律,以1千万为尺度来看:
0~6亿内质数分布表 | ||||||
序号 | 区间(单位:万) | 最小质数 | 最大质数 | 个数 | 几率% | |
1 | 0 | 1000 | 2 | 9999991 | 664579 | 6.64579 |
2 | 1000 | 2000 | 10000019 | 19999999 | 606028 | 6.06028 |
3 | 2000 | 3000 | 20000003 | 29999999 | 587252 | 5.87252 |
4 | 3000 | 4000 | 30000001 | 39999983 | 575795 | 5.75795 |
5 | 4000 | 5000 | 40000003 | 49999991 | 567480 | 5.6748 |
6 | 5000 | 6000 | 50000017 | 59999999 | 560981 | 5.60981 |
7 | 6000 | 7000 | 60000011 | 69999989 | 555949 | 5.55949 |
8 | 7000 | 8000 | 70000027 | 79999987 | 551318 | 5.51318 |
9 | 8000 | 9000 | 80000023 | 89999999 | 547572 | 5.47572 |
10 | 9000 | 10000 | 90000049 | 99999989 | 544501 | 5.44501 |
11 | 10000 | 11000 | 100000007 | 109999993 | 541854 | 5.41854 |
12 | 11000 | 12000 | 110000017 | 119999987 | 538339 | 5.38339 |
13 | 12000 | 13000 | 120000007 | 129999997 | 536539 | 5.36539 |
14 | 13000 | 14000 | 130000001 | 139999991 | 534012 | 5.34012 |
15 | 14000 | 15000 | 140000041 | 149999957 | 532197 | 5.32197 |
16 | 15000 | 16000 | 150000001 | 159999997 | 530062 | 5.30062 |
17 | 16000 | 17000 | 160000003 | 169999967 | 528625 | 5.28625 |
18 | 17000 | 18000 | 170000009 | 179999993 | 527302 | 5.27302 |
19 | 18000 | 19000 | 180000017 | 189999989 | 525088 | 5.25088 |
20 | 19000 | 20000 | 190000003 | 199999991 | 523464 | 5.23464 |
21 | 20000 | 21000 | 200000033 | 209999987 | 522689 | 5.22689 |
22 | 21000 | 22000 | 210000017 | 219999919 | 520914 | 5.20914 |
23 | 22000 | 23000 | 220000013 | 229999981 | 520033 | 5.20033 |
24 | 23000 | 24000 | 230000003 | 239999987 | 518971 | 5.18971 |
25 | 24000 | 25000 | 240000011 | 249999991 | 517774 | 5.17774 |
26 | 25000 | 26000 | 250000013 | 259999991 | 516542 | 5.16542 |
27 | 26000 | 27000 | 260000011 | 269999993 | 515524 | 5.15524 |
28 | 27000 | 28000 | 270000023 | 279999991 | 514685 | 5.14685 |
29 | 28000 | 29000 | 280000027 | 289999999 | 513594 | 5.13594 |
30 | 29000 | 30000 | 290000017 | 299999977 | 512662 | 5.12662 |
31 | 30000 | 31000 | 300000007 | 309999997 | 512196 | 5.12196 |
32 | 31000 | 32000 | 310000037 | 319999969 | 510685 | 5.10685 |
33 | 32000 | 33000 | 320000077 | 329999987 | 510269 | 5.10269 |
34 | 33000 | 34000 | 330000001 | 339999997 | 509130 | 5.0913 |
35 | 34000 | 35000 | 340000019 | 349999999 | 508921 | 5.08921 |
36 | 35000 | 36000 | 350000041 | 359999989 | 507762 | 5.07762 |
37 | 36000 | 37000 | 360000019 | 369999979 | 507117 | 5.07117 |
38 | 37000 | 38000 | 370000003 | 379999999 | 506968 | 5.06968 |
39 | 38000 | 39000 | 380000009 | 389999999 | 505837 | 5.05837 |
40 | 39000 | 40000 | 390000041 | 399999959 | 505116 | 5.05116 |
41 | 40000 | 41000 | 400000009 | 409999991 | 504387 | 5.04387 |
42 | 41000 | 42000 | 410000023 | 419999947 | 503766 | 5.03766 |
43 | 42000 | 43000 | 420000029 | 429999979 | 503571 | 5.03571 |
44 | 43000 | 44000 | 430000013 | 439999999 | 502505 | 5.02505 |
45 | 44000 | 45000 | 440000003 | 449999993 | 502483 | 5.02483 |
46 | 45000 | 46000 | 450000007 | 459999961 | 501510 | 5.0151 |
47 | 46000 | 47000 | 460000003 | 469999997 | 501170 | 5.0117 |
48 | 47000 | 48000 | 470000029 | 479999977 | 500706 | 5.00706 |
49 | 48000 | 49000 | 480000019 | 489999997 | 499944 | 4.99944 |
50 | 49000 | 50000 | 490000001 | 499999993 | 499499 | 4.99499 |
51 | 50000 | 51000 | 500000003 | 509999989 | 498385 | 4.98385 |
52 | 51000 | 52000 | 510000011 | 519999979 | 498435 | 4.98435 |
53 | 52000 | 53000 | 520000009 | 529999991 | 498011 | 4.98011 |
54 | 53000 | 54000 | 530000011 | 539999983 | 497683 | 4.97683 |
55 | 54000 | 55000 | 540000023 | 549999959 | 496975 | 4.96975 |
56 | 55000 | 56000 | 550000001 | 559999987 | 496794 | 4.96794 |
57 | 56000 | 57000 | 560000011 | 569999977 | 496136 | 4.96136 |
58 | 57000 | 58000 | 570000023 | 579999977 | 495889 | 4.95889 |
59 | 58000 | 59000 | 580000073 | 589999997 | 495369 | 4.95369 |
60 | 59000 | 60000 | 590000003 | 599999971 | 495159 | 4.95159 |
这下规律就比较明显了。可以看出,质数出现的几率是呈震荡缓慢下降分布的,当数字超过48000万之后几率就小于5%了。
如果当数字过十亿或百亿之后这个几率是否会是4%?或更小?这个几率有极限值吗?
孪生质数的分布:就是指相差为2的两个质数
在2~600306589的3134万个质数中,有孪生质数 2167298对,约占质数的6.91544%。在0~100内有8对;100~200内有7对;200~300内有4对;当以万为单位时,在0~1万内有205对,在1万~2万内有137对,呈震荡下降,在32万以后就只有两位数了。
以千万为单位来看分布情况,这时的趋势就更清晰了。
1~6亿孪生质数对分布表(以较大的一个数为准) | ||||||||
序号 | 区间(单位:万) | 最小孪生质数对 | 最大孪生质数对 | 数量(对) | 几率(‰) | |||
1 | 0 | 1000 | 3 | 5 | 9999971 | 9999973 | 58980 | 5.898 |
2 | 1000 | 2000 | 10000139 | 10000141 | 19999547 | 19999549 | 48427 | 4.8427 |
3 | 2000 | 3000 | 20000159 | 20000161 | 29999549 | 29999551 | 45484 | 4.5484 |
4 | 3000 | 4000 | 29999999 | 30000001 | 39999899 | 39999901 | 43862 | 4.3862 |
5 | 4000 | 5000 | 40000487 | 40000489 | 49999757 | 49999759 | 42348 | 4.2348 |
6 | 5000 | 6000 | 50000231 | 50000233 | 59999981 | 59999983 | 41457 | 4.1457 |
7 | 6000 | 7000 | 60000011 | 60000013 | 69999911 | 69999913 | 40908 | 4.0908 |
8 | 7000 | 8000 | 70000451 | 70000453 | 79999571 | 79999573 | 39984 | 3.9984 |
9 | 8000 | 9000 | 80000537 | 80000539 | 89999981 | 89999983 | 39640 | 3.964 |
10 | 9000 | 10000 | 90000107 | 90000109 | 99999587 | 99999589 | 39222 | 3.9222 |
11 | 10000 | 11000 | 100000037 | 100000039 | 109999859 | 109999861 | 38817 | 3.8817 |
12 | 11000 | 12000 | 110000549 | 110000551 | 119999861 | 119999863 | 38231 | 3.8231 |
13 | 12000 | 13000 | 120000299 | 120000301 | 129999929 | 129999931 | 38016 | 3.8016 |
14 | 13000 | 14000 | 130000007 | 130000009 | 139999901 | 139999903 | 37798 | 3.7798 |
15 | 14000 | 15000 | 140000351 | 140000353 | 149999879 | 149999881 | 37218 | 3.7218 |
16 | 15000 | 16000 | 150000449 | 150000451 | 159999941 | 159999943 | 37137 | 3.7137 |
17 | 16000 | 17000 | 160000457 | 160000459 | 169999901 | 169999903 | 36575 | 3.6575 |
18 | 17000 | 18000 | 170000189 | 170000191 | 179999639 | 179999641 | 36581 | 3.6581 |
19 | 18000 | 19000 | 180000719 | 180000721 | 189999839 | 189999841 | 36367 | 3.6367 |
20 | 19000 | 20000 | 190000241 | 190000243 | 199999901 | 199999903 | 36319 | 3.6319 |
21 | 20000 | 21000 | 200000081 | 200000083 | 209999891 | 209999893 | 35960 | 3.596 |
22 | 21000 | 22000 | 210000377 | 210000379 | 219999749 | 219999751 | 35648 | 3.5648 |
23 | 22000 | 23000 | 220000199 | 220000201 | 229999697 | 229999699 | 35578 | 3.5578 |
24 | 23000 | 24000 | 230000777 | 230000779 | 239999831 | 239999833 | 35653 | 3.5653 |
25 | 24000 | 25000 | 240000149 | 240000151 | 249999767 | 249999769 | 35236 | 3.5236 |
26 | 25000 | 26000 | 250000139 | 250000141 | 259999847 | 259999849 | 35137 | 3.5137 |
27 | 26000 | 27000 | 260000171 | 260000173 | 269999339 | 269999341 | 35160 | 3.516 |
28 | 27000 | 28000 | 270000041 | 270000043 | 279999989 | 279999991 | 34979 | 3.4979 |
29 | 28000 | 29000 | 280000067 | 280000069 | 289999769 | 289999771 | 35069 | 3.5069 |
30 | 29000 | 30000 | 290000237 | 290000239 | 299999639 | 299999641 | 34689 | 3.4689 |
31 | 30000 | 31000 | 300000317 | 300000319 | 309999971 | 309999973 | 34697 | 3.4697 |
32 | 31000 | 32000 | 310000307 | 310000309 | 319999751 | 319999753 | 34535 | 3.4535 |
33 | 32000 | 33000 | 320000669 | 320000671 | 329999819 | 329999821 | 34428 | 3.4428 |
34 | 33000 | 34000 | 330000269 | 330000271 | 339999941 | 339999943 | 34255 | 3.4255 |
35 | 34000 | 35000 | 340000721 | 340000723 | 349999877 | 349999879 | 34147 | 3.4147 |
36 | 35000 | 36000 | 350000069 | 350000071 | 359999537 | 359999539 | 33810 | 3.381 |
37 | 36000 | 37000 | 360000689 | 360000691 | 369999809 | 369999811 | 33912 | 3.3912 |
38 | 37000 | 38000 | 370000271 | 370000273 | 379999577 | 379999579 | 33918 | 3.3918 |
39 | 38000 | 39000 | 380000009 | 380000011 | 389999879 | 389999881 | 33885 | 3.3885 |
40 | 39000 | 40000 | 390000071 | 390000073 | 399999947 | 399999949 | 33666 | 3.3666 |
41 | 40000 | 41000 | 400000649 | 400000651 | 409999979 | 409999981 | 33543 | 3.3543 |
42 | 41000 | 42000 | 410000051 | 410000053 | 419999549 | 419999551 | 33638 | 3.3638 |
43 | 42000 | 43000 | 420000107 | 420000109 | 429999959 | 429999961 | 33408 | 3.3408 |
44 | 43000 | 44000 | 430000187 | 430000189 | 439999871 | 439999873 | 33564 | 3.3564 |
45 | 44000 | 45000 | 440000159 | 440000161 | 449999729 | 449999731 | 33335 | 3.3335 |
46 | 45000 | 46000 | 450000119 | 450000121 | 459999809 | 459999811 | 33248 | 3.3248 |
47 | 46000 | 47000 | 460000577 | 460000579 | 469999631 | 469999633 | 32946 | 3.2946 |
48 | 47000 | 48000 | 470000051 | 470000053 | 479999621 | 479999623 | 33157 | 3.3157 |
49 | 48000 | 49000 | 480000107 | 480000109 | 489999161 | 489999163 | 32785 | 3.2785 |
50 | 49000 | 50000 | 490000001 | 490000003 | 499999319 | 499999321 | 32813 | 3.2813 |
51 | 50000 | 51000 | 500000069 | 500000071 | 509999627 | 509999629 | 32789 | 3.2789 |
52 | 51000 | 52000 | 510000011 | 510000013 | 519999521 | 519999523 | 32792 | 3.2792 |
53 | 52000 | 53000 | 520000079 | 520000081 | 529999709 | 529999711 | 32807 | 3.2807 |
54 | 53000 | 54000 | 530000771 | 530000773 | 539999597 | 539999599 | 32769 | 3.2769 |
55 | 54000 | 55000 | 540000449 | 540000451 | 549999911 | 549999913 | 32683 | 3.2683 |
56 | 55000 | 56000 | 550000697 | 550000699 | 559999751 | 559999753 | 32560 | 3.256 |
57 | 56000 | 57000 | 560000039 | 560000041 | 569999657 | 569999659 | 32526 | 3.2526 |
58 | 57000 | 58000 | 570000029 | 570000031 | 579999611 | 579999613 | 32457 | 3.2457 |
59 | 58000 | 59000 | 580000829 | 580000831 | 589999901 | 589999903 | 32465 | 3.2465 |
60 | 59000 | 60000 | 590000219 | 590000221 | 599999429 | 599999431 | 32283 | 3.2283 |
当数字过十亿后其孪生质数的出现几率是否为2‰?这个几率也有极限值吗?
跨界孪生质数:一对孪生质数,相加后尾数为零。如29999999和30000001。在1~6亿内有722032对,约占孪生质数对的1/3。最小的是 29和31,最大的是599999429和599999431。
质数尾数只能是1、2、3、5、7、9。其中2和5仅限于10 以下的质数。按尾数分类来看3134万个质数的分布情况
以尾数划分质数的分布情况 | |||
序号 | 尾数 | 个数 | 所占比率(%) |
1 | 1 | 7834475 | 24.99832 |
2 | 2 | 1 | 0.00000 |
3 | 3 | 7834828 | 24.99945 |
4 | 5 | 1 | 0.00000 |
5 | 7 | 7835771 | 25.00246 |
6 | 9 | 7834924 | 24.99976 |
从尾数的分布来看:基本上是均匀分布的(除2、5之外)。
从以上分析可以看出:表面上看质数的出现无规律可循。但当数据较大时就会发现是遵循大数规律的,从统计层面看是有规律可循的。
质数出现的几率是呈缓慢震荡下降趋势,逐渐向某一极限数字靠拢,这个数字会是3%吗?
孪生质数的出现几率也是呈缓慢震荡下降趋势,逐渐向某一极限数字靠拢,这个数字是2‰吗?
逆质数对
顺着读与逆着读都是质数的一对数。如1949与9491,3011与1103,1453与3541等。在1千万内有40829对,最小的是13和31,最大的是9975899和9985799。
对称质数
构成质数的数字成对称性分布的,如11,131。在1千万内有777个,最小的是11,其次是101,最大的是 9989899。在对称质数中,仅有11是偶数位,其余阶为奇数位。十亿内最小的对称质数:100030001,最大的对称质数:999727999。
质数的性质决定了逆质数、对称性质数的首位数只能是1、3、7、9中的一个。
同样,根据质数的性质,以2~600306589的3134万个质数为基础,可以计算出3.6×1018内的所有质数。但受限于计算机的计算精度及运算能力,只是需要更多的时间罢了。
下面给出两个对照表,供爱好者参考
15位及以下最小与最大质数 | |||
序号 | 位数 | 最小 | 最大 |
1 | 1 | 2 | 7 |
2 | 2 | 11 | 97 |
3 | 3 | 101 | 997 |
4 | 4 | 1009 | 9973 |
5 | 5 | 10007 | 99991 |
6 | 6 | 100003 | 999983 |
7 | 7 | 1000003 | 9999991 |
8 | 8 | 10000019 | 99999989 |
9 | 9 | 100000007 | 999999937 |
10 | 10 | 1000000007 | 9999999967 |
11 | 11 | 10000000019 | 99999999977 |
12 | 12 | 100000000003 | 999999999989 |
13 | 13 | 1000000000039 | 9999999999971 |
14 | 14 | 10000000000037 | 99999999999973 |
15 | 15 | 100000000000031 | 999999999999989 |
15位及以下最小与最大对称质数 | |||
序号 | 位数 | 最小 | 最大 |
1 | 2 | 11 | 11 |
2 | 3 | 101 | 929 |
3 | 5 | 10301 | 98689 |
4 | 7 | 1003001 | 9989899 |
5 | 9 | 100030001 | 999727999 |
6 | 11 | 10000500001 | 99999199999 |
7 | 13 | 1000008000001 | 9999987899999 |
8 | 15 | 100000323000001 | 999999787999999 |