python求素數的個數,Python求質數

2021-09-17 08:38:20 字數 1934 閱讀 2760

1樓:華玉龍

#!/usr/bin/env python3import datetime

def susu(n):

sulist=[2,3]

if n ==2:

return sulist

m = 3

i=2while len(sulist)add=1if m==sulist[-1]:

m +=2

for i in sulist:

if m%i==0 and i<=sulist[-1]//2:

m+=2

add=0

break

if add:

return sulist

n=1000

begintime=datetime.datetime.now()for x in susu(n):

#print(x,end = ' ')

pass

# print(susu(n))

endtime=datetime.datetime.now()def _odd_iter():

n = 1

while true:

n = n + 1

yield n

def _not_divisible(n):

return lambda x: x % n > 0def primes():

it = _odd_iter() # 初始序列while true:

n = next(it) # 返回序列的第乙個數yield n

it = filter(_not_divisible(n), it) # 構造新序列

begintime=datetime.datetime.now()i=0for n in primes():

i+=1

# print(n,end=' ')

if i >n-1:

break

endtime=datetime.datetime.now()def _odd_iter():

n = 5

while true:

yield n

n = n + 2

yield n

n=n+4

def _not_divisible(n):

return lambda x: x % n > 0def primes():

yield 2

yield 3

it = _odd_iter() # 初始序列while true:

n = next(it) # 返回序列的第乙個數yield n

it = filter(_not_divisible(n), it) # 構造新序列

begintime=datetime.datetime.now()i=0for n in primes():

i+=1

# print(n,end=' ')

if i >n-1:

break

endtime=datetime.datetime.now()input()

我以前比較素數的演算法速度的,自己修改一下吧,複製時注意標點和縮排

2樓:汝歆

哥呵呵好吧巴巴爸爸哈哈哈巴巴爸爸巴巴爸爸巴巴爸爸巴巴爸爸巴巴爸爸

python求質數

3樓:匿名使用者

如下:import math

def m(a, b):

ret = 0

for x in range(a, b+1):

for y in range(2, int(math.sqrt(x))+1):

if x % y == 0:

break

else:

ret += 1

print(ret)

輸入:m(3,7)

得到:3

python的指令碼如何執行,如何執行Python指令碼

執行python指令碼的幾種方法 一.終端命令列下 python name.py 二.python環境中 若指令碼名稱為name.py,其內容為 a head b hehe print a,b 則使用 impport name 針對此種方法我們使用下面的語句來顯示內容 print name.a he...

python的就業現在怎麼樣,現在的Python的就業前景怎麼樣

學python的話北上廣深就業還不錯,工資不低。廣州python工程師的平均薪資是11790,還是很不錯的,深圳北京這種網際網路重鎮工資更高 國內機會 如果想學python的話一定要給自己選好方向,每一種語言都有自己的優勢,python也不例外,但這種優勢能否被體現,是大環境決定的,國內目前用pyt...

求一維陣列a中素數的個數。例如 如果陣列a的元數為 2,3,5,7,8,9,10,11,12,13 則結果為 6(在()中填空

你的程式中有點小錯.我給你改了如下注釋地方 另外我再定義了個變數,來標記是否為素數的 int m flag for i 0 i 10 i found if 1 m flag 若m flag為真則表示為素數 found printf prime number s is are d 2 count 將計...