python求質(zhì)數(shù)的算法 python求素數(shù)用什么方法達(dá)到時間最快?
python求素數(shù)用什么方法達(dá)到時間最快?1存儲隨機(jī)數(shù)并在列表N2 n中排序,從最小的數(shù)開始,找到3,找到素數(shù)I,然后從I中去掉最大數(shù)J的I的倍數(shù),重復(fù)3,直到I=J代碼如下:#coding=utf8
python求素數(shù)用什么方法達(dá)到時間最快?
1存儲隨機(jī)數(shù)并在列表N2 n中排序,從最小的數(shù)開始,找到3,找到素數(shù)I,然后從I中去掉最大數(shù)J的I的倍數(shù),重復(fù)3,直到I=J
代碼如下:#coding=utf8print u“請輸入一個數(shù)字:”n=input()isprime=truefor I in range(2,n):if n%I==0:isprime=false break if isprime:print str(n)u“是質(zhì)數(shù)?!癊lse:print str(n)u”不是質(zhì)數(shù)。素數(shù)是大于1的正整數(shù),它只能被自身和1除。我們應(yīng)該特別注意大于1的數(shù)字,因為1不是素數(shù)。這是程序代碼。
python如何判斷一個數(shù)是不是質(zhì)數(shù)?
1。打開pychar,單擊file,單擊new,然后創(chuàng)建一個空白的Python文件:2。開始編寫判斷素數(shù)的代碼。判斷素數(shù)上限最準(zhǔn)確的方法是用平方根加1。這里使用兩個循環(huán)。第一個循環(huán)遍歷0到100之間的數(shù),第二個循環(huán)判斷滿足條件的素數(shù)。這里有一個else,應(yīng)該與for而不是if對齊。如果它與If對齊,只要它不能被2除,它就會被添加到列表中,并且它會被添加很多次:3。右擊鼠標(biāo),點(diǎn)擊“run demo”,運(yùn)行準(zhǔn)備好的Python文件,在下面的控制臺中可以看到輸出結(jié)果:~編碼:utf8
If n==1:
繼續(xù)
elif n==2:
L.追加(2)
否則:
如果0不在[n%I中,則I在范圍(2)中,n)
]L.append(n)
]print L
運(yùn)行結(jié)果:
![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
如何用Python判斷一個數(shù)是否是質(zhì)數(shù)?
def baudu(self,start,end):
sushu=[
]對于范圍內(nèi)的i(start,end 1):
對于范圍內(nèi)的j(2,i):
如果i%j==0:
中斷
如果i==j 1:sushu.append文件(i)
ten=[
]對于范圍內(nèi)的p(1,長度(sushu)):十.附加(sushu[p])
如果p%10==0:
打?。ㄊ?/p>
十=[
]返回“完成!“
如果uuuuuu名稱uuuuuu==” uuuuuuuuuuuuuu“:
#!/usr/bin/python
#-*-編碼:UTF-8-*-
#求素數(shù)
開氏=100
解數(shù)=200
nums=V()
打?。U杜女士(開始=開市,結(jié)束=結(jié)市)