质数(prime number)占自然数的百分比

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了质数(prime number)占自然数的百分比相关的知识,希望对你有一定的参考价值。

质数(素数)占自然数的百分比。请简要说明推算过程。谢谢。

素数的数目
素数是无穷多的,对这个论断,现在所已知的最古老的检验方法是欧几里德在他的几何原本中提出来的。他的检验方法可以简单地总结如下:

取有限个数的素数,因为要做自变量我们假设全部的素数都存在,将这些素数相乘然后加1,得到的数是不会被这些素数中的任何一个整除的,因为无论除哪个总会余1。因此这个数要么本身就是个素数,要么存在不在这个有限集合内的约数。因此我们开始用的集合不包含所有的素数。
别的数学家也给出了他们自己的证明。欧拉证明了全部素数的倒数和发散到无穷的。恩斯特·库默的证明尤其简洁,Furstenberg用一般拓扑证明。

尽管整个素数是无穷的,仍然有人会问“100000以下有多少个素数?”,“一个随机的100位数多大可能是素数?”。素数定理可以回答此问题。

[编辑] 寻找素数
寻找在给定限度内的素数排列,埃拉托斯特尼筛法法是个很好的方法。然而在实际中,我们往往是想知道一个给定数是否是素数,而不是生成一个素数排列。进而,知道答案是很高的概率就是已经很满意的了,用素性测试迅速地检查一个给定数(例如,有几千位数的长度)是否是素数是可能的。典型的方法是随机选取一个数,然后围绕着这个数和可能的素数N检查一些方程式。重复这个过程几次后,它宣布这个数是明显的合数或者可能是素数。这种方法是不完美的:对某些测试而言,例如费马测试,不论选取了多少随机数都有可能将一些合数判断成可能的素数,这就引出了另一种数伪素数。而像米勒-拉宾测试,虽然只要选取够多数字来检验方程式,就可以保证其检验出的质数性是正确的,但这个保证门槛的数量太过庞大,甚至比试除法所需的还要多,在有限时间内运行起来只能知道答案正确的机率很高,不能保证一定正确。

目前最大的已知素数是232582657 − 1(此数字位长度是9,808,358),它是在2006年9月4日由GIMPS发现。这组织也在2005年12月15日发现了目前所知第二大的已知素数230402457 − 1(此数字位长度是9,152,052)。

数学家一直努力找寻产生素数的公式,但截至目前为止,并没有一个基本函数或是多项式可以正确产生所有的素数。历史上有许多试验的例子:17世纪初法国数学家梅森(Mersenne)在他的一个著作当中讨论了这样一种我们现在称之为梅森素数的素数,Mp=2p - 1,本来以为只要p是一个素数,n = 2p - 1就会是一个素数,这在p = 3,p = 5,p = 7都是正确的,但是p = 11时 -就不是素数了。
参考技术A 质数就是在所有比1大的整数中,除了1和它本身以外,不再有别的约数,这种整数叫做质数或素数。还可以说成质数只有1和它本身两个约数。这终规只是文字上的解释而已。能不能有一个代数式,规定用字母表示的那个数为规定的任何值时,所代入的代数式的值都是质数呢?
1

质数的概念
所谓质数或称素数,就是一个正整数,除了本身和 1 以外并没有任何其他因子。例如 2,3,5,7 是质数,而 4,6,8,9 则不是,后者称为合成数。从这个观点可将整数分为两种,一种叫质数,一种叫合成数。(有人认为数目字 1 不该称为质数)著名的高斯「唯一分解定理」说,任何一个整数。可以写成一串质数相乘的积。

质数的奥秘
质数的分布是没有规律的,往往让人莫名其妙。如:101、401、601、701都是质数,但上下面的301(7*43)和901(17*53)却是合数。

有人做过这样的验算:1^2+1+41=43,2^2+2+41=47,3^2+3+41=53……于是就可以有这样一个公式:设一正数为n,则n^2+n+41的值一定是一个质数。这个式子一直到n=39时,都是成立的。但n=40时,其式子就不成立了,因为40^2+40+41=1681=41*41。

质数的性质
被称为“17世纪最伟大的法国数学家”费尔马,也研究过质数的性质。他发现,设Fn=2^(2^n)+1,则当n分别等于0、1、2、3、4时,Fn分别给出3、5、17、257、65537,都是质数,由于F5太大(F5=4294967297),他没有再往下检测就直接猜测:对于一切自然数,Fn都是质数。但是,就是在F5上出了问题!费尔马死后67年,25岁的瑞士数学家欧拉证明:F5=4294967297=641*6700417,并非质数,而是合数。

更加有趣的是,以后的Fn值,数学家再也没有找到哪个Fn值是质数,全部都是合数。目前由于平方开得较大,因而能够证明的也很少。现在数学家们取得Fn的最大值为:n=1495。这可是个超级天文数字,其位数多达10^10584位,当然它尽管非常之大,但也不是个质数。质数和费尔马开了个大玩笑!

质数的假设
17世纪还有位法国数学家叫梅森,他曾经做过一个猜想:2^p-1代数式,当p是质数时,2^p-1是质数。他验算出了:当p=2、3、5、7、17、19时,所得代数式的值都是质数,后来,欧拉证明p=31时,2^p-1是质数。 p=2,3,5,7时,Mp都是素数,但M11=2047=23×89不是素数。

还剩下p=67、127、257三个梅森数,由于太大,长期没有人去验证。梅森去世250年后,美国数学家科勒证明,2^67-1=193707721*761838257287,是一个合数。这是第九个梅森数。20世纪,人们先后证明:第10个梅森数是质数,第11个梅森数是合数。质数排列得这样杂乱无章,也给人们寻找质数规律造成了困难。

质数表上的质数

现在,数学家找到的最大的梅森数是一个有9808357位的数:2^32582657-1。数学虽然可以找到很大的质数,但质数的规律还是无法循通。
【求大质数的方法】

我发现质数除2以外都是奇数,而奇数除了【奇数*奇数】(或再加“*奇数”)都是质数。那么用计算机先把【奇数*奇数】(或再加“*奇数”)(比如9,15,21,25,27,33,35,39……)都求出来,再找奇数中上面没提到的那些数,那些数就是素数。
人们找出的几个超大质数中有遗漏,那么就可以用此方法求出那些遗漏的数,不过需要很长时间!
这对于“孪生素数”有帮助哦!

上面这个算法比较垃圾,对于求很大的素数效率低下,这个很大的素数可以用概率算法求
参考技术B 这个能推出来吗?我就知道质数是无限个 参考技术C 如果按1~10的范围算,其中2、3、5、7都是质数,占4/10=2/5(40%)。
如果按1~20的范围算,其中2、3、5、7、11、13、17、19都是质数,占8/20=2/5(40%)。
如果按1~30的范围算,其中2、3、5、7、11、13、17、19、23、29都是质数,占10/30=1/3(≈33%)。
如果按1~40的范围算,其中2、3、5、7、11、13、17、19、23、29、31、37都是质数,占12/40=3/10(30%)。
如果按1~50的范围算,其中2、3、5、7、11、13、17、19、23、29、31、37、41、43、47都是质数,占15/50=3/10(30%)。
如果按1~60的范围算,其中2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59都是质数,占17/60≈3/10(30%)。
如果按1~70的范围算,其中2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59、61、67都是质数,占19/70≈2/7(≈28%)。
如果按1~80的范围算,其中2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59、61、67、71、73、79都是质数,占20/80=1/4(25%)。
如果按1~90的范围算,其中2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59、61、67、71、73、79、81、83、89都是质数,占23/90≈12/45(26%)。
如果按1~100的范围算,其中2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59、61、67、71、73、79、81、83、89、97都是质数,占24/100=6/25(24%)。
可以发现,数字范围越广,那么质数所占的百分比越来越小,1~100的范围质数所占的百分比越来越趋近于25%。
参考技术D 根据质数定理(用π(x)表示不大于x的质数个数)
lim[π(x)*lnx/x]=1(x->+∞)
所以lim[π(x)/x]=lim(1/lnx)=0 (x->+∞)

以上是关于质数(prime number)占自然数的百分比的主要内容,如果未能解决你的问题,请参考以下文章

762. Prime Number of Set Bits in Binary Representation二进制中有质数个1的数量

求n以内的质数(质数的定义:在大于1的自然数中,除了1和它本身意外,无法被其他自然数整除的数)

leetcode 204. Count Primes

[20-04-26][Self-test 2]Java Prime Number

尺取法 || POJ 2739 Sum of Consecutive Prime Numbers

『素数(Prime)判定和线性欧拉筛法(The sieve of Euler)』