對Python 中的簡單素數產生器進行故障排除
您的程式碼旨在產生素數,但它遇到了問題並且僅列印計數多變的。讓我們探討一下原因並提供解決方案。
以下程式碼被辨識為有問題:
import math def main(): count = 3 one = 1 while one == 1: for x in range(2, int(math.sqrt(count) + 1)): if count % x == 0: continue if count % x != 0: print(count) count += 1
有兩個主要問題:
這是程式碼的修訂版本,解決了這些問題:
import math def main(): count = 3 while True: is_prime = True for x in range(2, int(math.sqrt(count) + 1)): if count % x == 0: is_prime = False break if is_prime: print(count) count += 1
此更新程式碼修正邏輯以確保僅列印素數。它使用「is_prime」標誌檢查整除性,如果 count 可被「x」的任何值整除,則中斷內部循環。
以上是為什麼我的 Python 素數產生器只列印 count 變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!