關(guān)于判斷是否為素?cái)?shù)的公式,判斷是否為素?cái)?shù)這個(gè)問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、關(guān)于素?cái)?shù)的判定 所謂“篩選法”指的是“埃拉托色尼(Eratosthenes)篩法”。
2、他是古希臘的著名數(shù)學(xué)家。
3、他采取的方法是,在一張紙上寫上1到100全部整數(shù),然后逐個(gè)判斷它們是否是素?cái)?shù),找出一個(gè)非素?cái)?shù),就把它挖掉,最后剩下的就是素?cái)?shù)。
4、 具體做法如下: <1> 先將1挖掉(因?yàn)?不是素?cái)?shù))。
5、 <2> 用2去除它后面的各個(gè)數(shù),把能被2整除的數(shù)挖掉,即把2的倍數(shù)挖掉。
6、 <3> 用3去除它后面的各數(shù),把3的倍數(shù)挖掉。
7、 <4> 分別用4、5…各數(shù)作為除數(shù)去除這些數(shù)以后的各數(shù)。
8、這個(gè)過程一直進(jìn)行到在除數(shù)后面的數(shù)已全被挖掉為止。
9、例如找1~50的素?cái)?shù),要一直進(jìn)行到除數(shù)為47為止(事實(shí)上,可以簡化,如果需要找1~n范圍內(nèi)素?cái)?shù)表,只需進(jìn)行到除數(shù)為n^2(根號n),取其整數(shù)即可。
10、例如對1~50,只需進(jìn)行到將50^2作為除數(shù)即可。
11、) 如上算法可表示為: <1> 挖去1; <2> 用剛才被挖去的數(shù)的下一個(gè)數(shù)p去除p后面各數(shù),把p的倍數(shù)挖掉; <3> 檢查p是否小于n^2的整數(shù)部分(如果n=1000, 則檢查p<31?),如果是,則返回(2)繼續(xù)執(zhí)行,否則就結(jié)束; <4> 紙上剩下的數(shù)就是素?cái)?shù)。
12、 #include
本文分享完畢,希望對大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!