判斷素數 md

2021-08-28 07:23:34 字數 1058 閱讀 1681

素數就是乙個數被除數除了1和它本身就沒有其他被除數了(1除外,1不是素數)

/**

* 常規判斷素數的方法

* 從2遍歷如果到這個數之前都不可被整除,則該數為素數

* @param num

* @return

*/public

boolean

isprimenum

(int num)

for(

int i=

2; ireturn

true

;}

/**

* 通過開根號的判斷方法來判斷是否是素數

* @param num

* @return

*/public

boolean

isprimenumbysqrt

(int num)

for(

int i=

2; i<=math.

sqrt

(num)

; i++)}

return

true

;}

注意:這裡i<=math.sqrt(num)需要等於,如果沒有等於,如同9就會判斷出錯。

/**

* 篩選法判斷數字是否是素數

* 通過空間換時間即new乙個boolean陣列出來,

* 依次遍歷i如果i不是num的公約數則把i的倍數全部值為true(已經判斷)

* @param num

* @return

*/public

boolean

isprimenumbyfiler

(int num)

boolean

array =

newboolean

[num+1]

;// 類裝載後每個元素都為false(未判斷);

for(

int i=

2; i)else}}

}return

true

;}

利用孿生素數判斷素數

思路參見 孿生素數 所謂孿生素數指的是間隔為 2 的相鄰素數。大於6以上的孿生素數,p 1和p 1為素數,則p 1和p 1一定為奇數,則p一定為偶數,即p為2的倍數 p 1 p p 1為連續的自然數,他們一定有乙個是3的倍數,p 1和p 1為素數,則他們不為3的倍數,即p也為3的倍數 所以p一定為2...

判斷素數 Excel公式練習53 判斷素數

excelperfect 本次的練習是 在列a中給定乙個整數值,例如單元格a2,並且2 a2 100,要在列b中 例如單元格b2 使用公式進行判斷 如果列a中的值是素數,則返回 素數 如下圖1所示。圖1素數也稱質數,是指在大於1的自然數中,除了1和它本身外不再有其他因數的自然數。先不看答案,自已動手...

素數的判斷

所謂素數是指除了1和它本身以外,不能被任何整數整除的數,例如17就是素數,因為它不能被2 16的任一整數整除。因此判斷乙個整數m是否是素數,只需把m被2 m 1之間的每乙個整數去除,如果都不能被整除,那麼m就是乙個素數 另外判斷方法還可以簡化。m不必唄2 m 1之間的每乙個整數去除,只需被2 m之間...