如何算出一个数的所有质数

如何算出一个数的所有质数,第1张

1、找到这个数字的平方根m=√m

2、找到不大于m的所有质数

3、在一张自然数表上划掉所有质数的整数倍(质数本身不划掉)

4、把1划掉。

5、没有划掉的数字就是质数。

例如,我们要找到100以内的所有质数,只需要按照下面的步骤进行:

1、计算100的平方根,是10。

2、10以内的质数有2、3、5、7

3、划掉2、3、5、7的整数倍。首先划掉2的倍数,如4、6、8…、98、100,然后划掉3的倍数,如6、9、12、15、…、99,重复的就不需要再划掉了。然后划掉5的倍数,7的倍数。

4、最后划掉1。

扩展资料

质数与黎曼猜想

我们之前谈到:质数与黎曼猜想之间有着千丝万缕的联系。1896年,法国科学院举行比赛:征稿证明黎曼定理。两位年轻的数学家阿达马和德·拉·瓦莱布桑获得了这一殊荣。

实际上这两位数学家并没有证明黎曼猜想,只是获得了一点进展,但是这一点进展就一举证明了欧拉和勒让德的猜想,把素数猜想变成了素数定理。黎曼猜想的威力可见一斑。

1901年,瑞典数学家科赫证明:如果黎曼猜想被证实,那么素数定理中的误差项c大约是√xln(x)的量级。

即便黎曼猜想被证实,人们也只是在质数规律探索的过程中更近了一步,距离真正破解质数的规律,还有很长的路要走。也许质数就是宇宙留给人类的密码。

素数是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任
何其它两个整数的乘积。例如,15=3*5,所以15不是素数;又如,12
=6*2=4*3,所以12也不是素数。另一方面,13除了等于13*1以
外,不能表示为其它任何两个整数的乘积,所以13是一个素数。
有的数,如果单凭印象去捉摸,是无法确定它到底是不是素数的。有些数则
可以马上说出它不是素数。一个数,不管它有多大,只要它的个位数是2、4、
5、6、8或0,就不可能是素数。此外,一个数的各位数字之和要是可以被3
整除的话,它也不可能是素数。但如果它的个位数是1、3、7或9,而且它的
各位数字之和不能被3整除,那么,它就可能是素数(但也可能不是素数)。没
有任何现成的公式可以告诉你一个数到底是不是素数。你只能试试看能不能将这
个数表示为两个比它小的数的乘积。
找素数的一种方法是从2开始用“是则留下,不是则去掉”的方法把所有的
数列出来(一直列到你不想再往下列为止,比方说,一直列到10,000)。
第一个数是2,它是一个素数,所以应当把它留下来,然后继续往下数,每隔一
个数删去一个数,这样就能把所有能被2整除、因而不是素数的数都去掉。在留
下的最小的数当中,排在2后面的是3,这是第二个素数,因此应该把它留下,
然后从它开始往后数,每隔两个数删去一个,这样就能把所有能被3整除的数全
都去掉。下一个未去掉的数是5,然后往后每隔4个数删去一个,以除去所有能
被5整除的数。再下一个数是7,往后每隔6个数删去一个;再下一个数是11
,往后每隔10个数删一个;再下一个是13,往后每隔12个数删一个。……
就这样依法做下去。
你也许会认为,照这样删下去,随着删去的数越来越多,最后将会出现这样
的情况;某一个数后面的数会统统被删去崮此在某一个最大的素数后面,再也不
会有素数了。但是实际上,这样的情况是不会出现的。不管你取的数是多大,百
万也好,万万也好,总还会有没有被删去的、比它大的素数。
事实上,早在公元前300年,希腊数学家欧几里得就已证明过,不论你取
的数是多大,肯定还会有比它大的素数,假设你取出前6个素数,并把它们乘在
一起:2*3*5*7*11*13=30030,然后再加上1,得3003
1。这个数不能被2、3、5、7、11、13整除,因为除的结果,每次都会
余1。如果30031除了自己以外不能被任何数整除,它就是素数。如果能被
其它数整除,那么30031所分解成的几个数,一定都大于13。事实上,3
0031=59*509。
对于前一百个、前一亿个或前任意多个素数,都可以这样做。如果算出了它
们的乘积后再加上1,那么,所得的数或者是一个素数,或者是比所列出的素数
还要大的几个素数的乘积。不论所取的数有多大,总有比它大的素数,因此,素
数的数目是无限的。
随着数的增大,我们会一次又一次地遇到两个都是素数的相邻奇数对,如5
,7;11,13;17,19;29,31;41,43;等等。就数学家所
能及的数来说,它们总是能找到这样的素数对。这样的素数对到底是不是有无限
个呢?谁也不知道。数学家认为是无限的,但他们从来没能证明它。这就是数学
家为什么对素数感兴趣的原因。素数为数学家提供了一些看起来很容易、但事实
却非常难以解决的问题,他们目前还没能对付这个挑战哩。
这个问题到底有什么用处呢?它除了似乎可以增添一些趣味以外,什么用处
也没有。

素数就是质数。它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积(1和0既非素数也非合数)。例如,15=3*5,所以15不是素数;又如,12=6*2=4*3,所以12也不是素数。另一方面,13除了等于13*1以外,不能表示为其它任何两个整数的乘积,所以13是一个素数。
有的数,如果单凭印象去捉摸,是无法确定它到底是不是素数的。有些数则可以马上说出它不是素数。一个数,不管它有多大,只要它的个位数是2、4、5、6、8或0,就不可能是素数。此外,一个数的各位数字之和要是可以被3整除的话,它也不可能是素数。但如果它的个位数是1、3、7或9,而且它的各位数字之和不能被3整除,那么,它就可能是素数(但也可能不是素数)。没有任何现成的公式可以告诉你一个数到底是不是素数。你只能试试看能不能将这
个数表示为两个比它小的数的乘积。
找素数的一种方法是从2开始用“是则留下,不是则去掉”的方法把所有的数列出来(一直列到你不想再往下列为止,比方说,一直列到10,000)。第一个数是2,它是一个素数,所以应当把它留下来,然后继续往下数,每隔一个数删去一个数,这样就能把所有能被2整除、因而不是素数的数都去掉。在留下的最小的数当中,排在2后面的是3,这是第二个素数,因此应该把它留下,然后从它开始往后数,每隔两个数删去一个,这样就能把所有能被3整除的数全都去掉。下一个未去掉的数是5,然后往后每隔4个数删去一个,以除去所有能被5整除的数。再下一个数是7,往后每隔6个数删去一个;再下一个数是11,往后每隔10个数删一个;再下一个是13,往后每隔12个数删一个。……就这样依法做下去。
你也许会认为,照这样删下去,随着删去的数越来越多,最后将会出现这样的情况;某一个数后面的数会统统被删去崮此在某一个最大的素数后面,再也不会有素数了。但是实际上,这样的情况是不会出现的。不管你取的数是多大,百万也好,万万也好,总还会有没有被删去的、比它大的素数。
事实上,早在公元前300年,希腊数学家欧几里得就已证明过,不论你取的数是多大,肯定还会有比它大的素数,假设你取出前6个素数,并把它们乘在一起:2*3*5*7*11*13=30030,然后再加上1,得30031。这个数不能被2、3、5、7、11、13整除,因为除的结果,每次都会余1。如果30031除了自己以外不能被任何数整除,它就是素数。如果能被其它数整除,那么30031所分解成的几个数,一定都大于13。事实上,30031=59*509。
对于前一百个、前一亿个或前任意多个素数,都可以这样做。如果算出了它们的乘积后再加上1,那么,所得的数或者是一个素数,或者是比所列出的素数还要大的几个素数的乘积。不论所取的数有多大,总有比它大的素数,因此,素
数的数目是无限的。
随着数的增大,我们会一次又一次地遇到两个都是素数的相邻奇数对,如5,7;11,13;17,19;29,31;41,43;等等。就数学家所能及的数来说,它们总是能找到这样的素数对。这样的素数对到底是不是有无限个呢?谁也不知道。数学家认为是无限的,但他们从来没能证明它。这就是数学家为什么对素数感兴趣的原因。素数为数学家提供了一些看起来很容易、但事实却非常难以解决的问题,他们目前还没能对付这个挑战哩。
迄今为止,人类发现的最大的素数是 224036583-1,这是第 41 个 梅森(Mersenne)素数。
素数也叫质数,是只能被自己和 1 整除的数,例如2、3、5、7、11等。2500 年前,希腊数学家欧几里德证明了素数是无限的,并提出少量素数可写成“2 的n次方减 1”的形式,这里 n 也是一个素数。此后许多数学家曾对这种素数进行研究,17 世纪的法国教士马丁·梅森(Martin Mersenne)是其中成果较为卓著的一位,因此后人将“2的n次方减1”形式的素数称为梅森素数。
第19~41个梅森素数


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12954877.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存