python 等差素數數列

2021-10-01 11:07:55 字數 1030 閱讀 5898

等差素數數列

1.問題描述:

類似7、37、67、97、107、137、167、197,這樣由素數組成的數列叫做等差素數數列。

素數數列具有項數的限制,一般指素數數列的項數有多少個連續項,最多可以存在多少個連續項。

2.題目:

程式設計找出100以內的等差素數數列。

解題思路:

#1、篩法找到所有的素數

#2. 對於素數list內素有倆兩組合,構造等差數列a0, a1項

#3. 計算出a2, 查表判斷a2是否是素數,是素數則能構成素數等差序列, 計算a3…

n=

int(

input

('請輸入查詢範圍:'))

defprimenumber

(n):

pt=[true]*n

s=for p in

range(2

,n):

ifnot pt[p]

:continue

for i in

range

(p*p,n,p)

: pt[i]

=false

return pt,s

pt,s=primenumber(n)

for i in

range

(len

(s))

:for j in

range

(i+1

,len

(s))

: a0,a1=s[i]

,s[j]

an = a1 + a1 - a0 #公差相等,前後項相加,等於中間項的2倍

k =while an < n and pt[an]

:#判斷an項是否為素數,如果是則新增到k,列印出來

an += a1 - a0 #

if k:

print

([a0, a1]

+k)

藍橋杯 最長等差素數數列

題目 在小於10的素數中有3 5 7組成的等差數列,在小於30的素數中有11 17 23 29組成的等差數列。試找出區間 100,1000 內的素數構成的最大等差數列 即等差數列包含的素數個數最多 並列印輸出。關鍵字 素數 等差數列 思路 先用乙個陣列標記出 100 1000 之間哪些是素數 差值從...

等差素數列

小於10的素數中有3 5 7組成等差數列,在30以內的素數中,有5 11 17 23 29組成等差數列 在指定區間 x,y 如果存在成等差數列的n n 3 個素數,試求n的最大值,並輸出乙個最多項數的等差素數列 1.設計要點 1 標註素數 通過m迴圈列舉指定區間 x,y 內的奇數,應用試商法探求素數...

等差素數列

2,3,5,7,11,13,是素數序列。類似 7,37,67,97,127,157 這樣完全由素數組成的等差數列,叫等差素數數列。上邊的數列公差為30,長度為6。2004年,格林與華人陶哲軒合作證明了 存在任意長度的素數等差數列。這是數論領域一項驚人的成果!有這一理論為基礎,請你借助手中的計算機,滿...