首页
/
每日頭條
/
生活
/
查找質數公式
查找質數公式
更新时间:2024-10-05 06:17:43

查找質數公式?先列舉一個口算方法:假設計算120以内的質數可以把2、3、5、7先列出來,然後從6開始往後,每次加6得一偶數(12、18、24…),然後計算該偶數的相鄰奇數是否是質數,計算方法是,首先将個位為5(比如25)的奇數直接pass,在49之前隻需計算能否被3整除,即11、13(12的相鄰奇數)、17、19(18的相鄰奇數)、23(24的相鄰奇數,pass掉25)、29、31(30的相鄰奇數)、37(36的相鄰奇數pass掉35)、41、43(42的相鄰奇數)、47(48的相鄰奇數)隻需計算能否被3整除;在48之後121之前的6的倍數的相鄰奇數隻需計算能否被3、7整除(比如113=114-1隻需計算能否被3、7整除),3、7都不能整除就是質數(延伸:121=11*11至168=13*13-1則隻需要計算3、7、11……),今天小編就來聊一聊關于查找質數公式?接下來我們就一起去研究一下吧!

查找質數公式(快速計算質數)1

查找質數公式

先列舉一個口算方法:假設計算120以内的質數。可以把2、3、5、7先列出來,然後從6開始往後,每次加6得一偶數(12、18、24…),然後計算該偶數的相鄰奇數是否是質數,計算方法是,首先将個位為5(比如25)的奇數直接pass,在49之前隻需計算能否被3整除,即11、13(12的相鄰奇數)、17、19(18的相鄰奇數)、23(24的相鄰奇數,pass掉25)、29、31(30的相鄰奇數)、37(36的相鄰奇數pass掉35)、41、43(42的相鄰奇數)、47(48的相鄰奇數)隻需計算能否被3整除;在48之後121之前的6的倍數的相鄰奇數隻需計算能否被3、7整除(比如113=114-1隻需計算能否被3、7整除),3、7都不能整除就是質數。(延伸:121=11*11至168=13*13-1則隻需要計算3、7、11……)。

質數的定義:大于1且隻能被1和自身整除的自然數(如:2、3、5、7、11等)。

合數的定義:大于1且不是質數的自然數(如:4,6,8,9,10等)。

簡單地根據質數的定義,要判斷一個數N是否是質數,需要證明2至N-1的自然數都不能整除N,然而事實上很多自然數是可以直接排除質數之外的,比如一個偶數,很明顯能被2整除,又比如位數為5的奇數,很明顯能被5整除,也無需計算。

本文将介紹質數的快速計算方法。比如,如何快速計算出自然數M(M可以足夠大)以内的質數;又比如,在大質數的計算中(通常是用計算機編程計算),如何快速計算一個大數是否是質數。

一、減少需要計算的數

由于除2以外的所有偶數均可以排除,也就是說,除2之外的所有偶數都是合數,無需計算;需要計算的奇數可以定義為:2n 1(或2n-1),n為自然數;或4n 1及4n 3(可以用4n-1代替);或6n 1,6n 3,6n 5(可以用6n-1替代);或8n 1,8n 3,8n 5(8n-3),8n 7(8n-1)……

2n 1方式需要對所有奇數進行計算,未達到減少計算數的目的。

4n 1及4n-1方式也不能減少計算數,因為4*2 1及4*4-1都是合數,而4*2-1和4*4 1都是質數,無法直接減少計算數,也未達到減少計算數的目的。

8n方式可以用8n1及8n3也無法減少計算數(8*1 1,8*2-1,8*33都是合數,所以必須全部運算),也未達到減少計算數的目的。

對于6n1及6n 3方式而言,由于6n 3能被3整除,是無需計算就能排除是質數的,所以用6n1及6n 3方式計算隻需要計算6n1,減少了6n 3的判斷。比如說:計算100以内的質數,2、3以上可以隻計算6*1-1(5)、6*1 1(7),6*2-1(11)、6*2 1(13),6*3-1(17)、6*3 1(19)……,而9(6*1 3)、15(6*2 3)、21……等奇數是無需計算的,這樣就減少了需要計算的數了(準确地說,每3個奇數可以減少1個計算數)。

如果感興趣,可以從8往後再看看,10n…方式每5個奇數可以減少1個計算數;12n方式每6個奇數可以減少2個計算數,但表達式較6n方式麻煩,且實質上參與運算的數是一樣的;14n方式每7個奇數可以減少1個計算數……。

二、減少計算量

如上節述,2、3以外,可以用計算6n1是否是質數(口算就是從6開始,計算6的倍數的兩個相鄰數(6計算5、7,12計算11、13;18計算17、19,24計算23、25……)是否為質數。

對于每一個需要計算的數,可以用以下方法減少計算量:

對于一個數N(N可以任意大),N的算術平方根的整數部分為x,如果N不能被小于或等于x的任意質數整除,則N為質數(換言之:計算N是否為質數可以隻計算小于或等于x的質數能否整除N)。

能用該算法減少計算量的原因:如果N為合數,則N一定能分解成2個以上的質因數,其中最小的一個質因數一定不會大于x。

三、綜合

計算一個自然數M(M可以足夠大)以内的質數,可以2、3、5、7先列出來,然後從6開始,每次加6得一偶數,計算該偶數的相鄰奇數是否是質數,口算方法是,首先将個位為5(比如25)的直接pass,在49之前隻需計算能否被3整除(5已經一眼排除),在48之後的6的倍數的相鄰奇數隻需計算能否被3、7整除(3、7都不能整除就是質數)。(121-168則隻需要計算3、7、11;169至288=17*17-1隻需計算3、7、11、13……)。在計算大奇數是否為質數時,由于不是口算而是用計算機編程計算,就要把5納入運算,可以建一隊列從小到大依次将計算出的質數保存在隊列中,然後對N=6n1的每一個奇數計算,依次計算3、5、7……、x(x為N的算術平方根的整數部分)是否能整除N即可。

Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
如何提高免疫力
如何提高免疫力
如何提高免疫力?多喝水:提高免疫力的首要任務是要多飲開水,這樣能使鼻腔和口腔内的黏膜保持濕潤;多喝水還能讓人感覺清新,充滿活力,接下來我們就來聊聊關于如何提高免疫力?以下内容大家不妨參考一二希望能幫到您!如何提高免疫力多喝水:提高免疫力的首...
2024-10-05
魔獸世界懷舊服新手任務大全
魔獸世界懷舊服新手任務大全
1、主城所在地圖除主城以外均無飛行點。2、絕大多數地圖一個陣營最多隻有一個飛行點,例外如下:(1)部落在荊棘谷有兩個飛行點(格羅姆高、藏寶海灣并不是中立飛行點,而是區分聯盟部落),(2)部落在貧瘠之地有兩個飛行點(十字路口、陶拉祖營地,此外...
2024-10-05
中部5省發展潛力排名
中部5省發展潛力排名
2022年4月,國家統計局公布了一季度GDP初步核算結果,總量為270178億元,跟去年同期相比增幅為4.8%。随着總盤子出爐,各省份也相繼公布了今年一季度的成績單。我國的經濟是有區域劃分的,區域不同,經濟數據差别很大。總體來看就是東強西弱...
2024-10-05
怎麼去除word文檔裡的紅色波浪線
怎麼去除word文檔裡的紅色波浪線
Word文檔中文字下有紅色波浪線或綠色雙下劃線如何去掉?遇到這樣的問題,可以将光标移到對應的位置,右擊選擇【忽略一次】或選擇【忽略全部】即可去除。當然若想全部去除,則可以這樣操作:點擊任意選項,右擊選擇【自定義功能區】進入Word選項,随後...
2024-10-05
10位男星今昔容貌對比
10位男星今昔容貌對比
美貌是不可再生資源,天生麗質本來便是一種優勢,比如張柏芝、李嘉欣、關之琳等,皆靠臉在江湖上留下傳說。在男明星裡也有一批完全是用顔值扣開演繹大門的,他們從小帥到大,可能土過,但從未醜過,年紀輕輕就擁有“帥炸天”美貌。比如熱播劇《蒼蘭訣》的男主...
2024-10-05
Copyright 2023-2024 - www.tftnews.com All Rights Reserved