python100以內孿生素數 孿生素數

2021-10-18 14:13:32 字數 745 閱讀 7045

問題描述:

若兩個素數之差為2,則這兩個素數就是孿生素數。

編寫程式找出1~100之間的所有孿生素數。

我的**:import math

def prime(n):

count=0

for  i in range(2,int(math.sqrt(n))+1):

if n%i==0:

count=1

i+=1

if count==1:

return none

else:

return true

a=for j in range(2,100):

if prime(j)==true:

for k in range(len(a)-1):

if a[k]+2==a[k+1]:

print a[k],a[k+1]

結果:[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

3 55 7

11 13

17 19

29 31

41 43

59 61

71 73

我的思路:

而且乙個素數的孿生素數必然是在其左右的,所以判斷是否滿足a[k]+2==a[k+1]關係,滿足的兩素數即為孿生素數,注意,此時的迴圈範圍為len(a)-1,如果是a[k-1]+

Python 計算100以內素數之和

找出100內所有素數 ls for i in range 100 if i 2 continue 難點 1.range 2,2 返回空值,直接跳過迴圈,未執行break,else語句會被執行 2.for.j迴圈執行完畢後,如果未找到滿足i j 0的數值,證明其是素數,break不會被執行,else會...

演算法題 查詢100以內的孿生素數的組數

所謂孿生素數指的是間隔為2的相鄰素數,就像孿生兄弟。最小的孿生素數是 3,5 在100 以內的孿生素數還有 5,7 11,13 17,19 29,31 41,43 59,61 和 71,73 總計有 8 組。思路 遍歷到100,先判斷當前的數字是否是素數,是則記錄下來,並且和上乙個記錄下來的素數進行...

python 求100以內素數 質數和

import math def is prime n 簡化問題,先利用函式判斷是否為質數 if n 1 是賦值,才是判斷,切記切記 return false for i in range 2,int math.sqrt n 1 質數判斷條件,注意 1 if n i 0 return false re...