[問題] 用Python算質數

看板Python作者 (狗狗)時間15年前 (2009/04/24 03:24), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/2 (看更多)
改自http://larc.ee.nthu.edu.tw/~jcyeh/python/cdoc/tut/node6.html code如下:那行 =========== def primeNumber(x): for n in xrange(2,x): for m in xrange(2,n): #第二個for loop if n%m == 0: break else: #為何else要縮排在這裡? print n, x = int(raw_input("enter a number:")) primeNumber(x) =========== 當數字大於100000時 計算就耗時了 有辦法改code加速尋找質數的運算嗎? 另外一個問題:else那行如果縮排退一格 結果會變得不同 而我不太懂else是針對什麼情況之下發生? 因為它是跟for對齊,但是通常不是都跟if放在一起嗎? break是中斷第二個for loop對吧?中斷後為何不執行else步驟呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.59.68 ※ 編輯: leondemon 來自: 140.129.59.68 (04/24 03:39)

04/24 04:19, , 1F
這是演算法的問題
04/24 04:19, 1F

04/24 04:21, , 2F
sorry,我不太懂 >"<
04/24 04:21, 2F
文章代碼(AID): #19yC1e7g (Python)
文章代碼(AID): #19yC1e7g (Python)