我已經做了一個素數查找器,你輸入一個數字,它告訴你天氣它是一個素數。Python素數查找器
while True:
p = int(input('Enter a number '))
for d in range(2, p):
if p % d == 0:
print(p, "is not a prime number!", d,"*", p//d,"=",p)
break
else:
print(p, "is a prime number!")
break
但是它顯示的數字顯然不是素數。我認爲它只是將它除以2,因爲我嘗試過的所有奇數都被輸出爲奇數。
任何人都可以幫助解決這個問題嗎?
想一想 - 什麼時候你確定一個數字是素數?是否在你檢查過它是否可以被二整除之後? – jonrsharpe
我認爲它只是將它除以2,因爲我嘗試過的所有奇數都被輸出爲奇數? – Avinash
爲了表現,你可以在範圍(2,math.sqrt(p)+1)中使用'd':' –