使用python判斷素數

2021-10-13 13:13:25 字數 1043 閱讀 3388

def

isprime

(num)

:"""直接計算是否是素數"""

count =

0for i in

range(2

, num)

:if num % i ==0:

count +=

1return

false

return

true

defisprime2

(num)

:"""

定理1.1.7 和 歐幾里得除法

首先找出 <= sqrt(num) 的所有素數,如果num不能夠被其中的任意乙個整除,那麼便是素數

"""prime_list =

for i in

range(2

,int

(math.sqrt(num))+

1):if isprime(i)

:for prime in prime_list:

if num % prime ==0:

return

false

return

true

defprime

(num)

:"""

厄拉托塞師篩法

首先找出 <= sqrt(num) 的所有素數, 然後對從1到num中刪除掉素數的倍數

"""prime_list =

for i in

range(2

,int

(math.sqrt(num))+

1):if isprime(i)

: all_num =

[i for i in

range(2

, num +1)

]for prime in prime_list:

for i in all_num:

if i % prime ==

0and i / prime >1:

all_num.remove(i)

return all_num

Python 判斷素數

乙個大於1的自然數,除了1和它本身外,不能被其他自然數 質數 整除 2,3,5,7等 換句話說就是該數除了1和它本身以外不再有其他的因數。以下是判斷素數的函式 1 defisprime n 2if n 1 3return false 4for i in range 2,n 5if n i 0 6re...

Python例項 判斷素數

判斷素數 date 2019 11 12 writer 無名十三 defisprime a,b 定義乙個判斷素數的函式 list prime 建立乙個空列表,用於接收a與b之間的素數 for i in range a,b 1 for j in range 2 i 1 if j i if i j 0 ...

python入門 判斷素數

素數又稱質數,指大於1的且只能被自己整除的數。1 和 0 既非素數也非合數,2 3 5 7 11 13 是素數。n int input 請輸入乙個數 for i in range 2 n 2到n 1迴圈 if n i 0 用n除以2到n 1,判斷是否能整除其他數 print d 不是素數!n bre...