作者v3dys6f3a3j5 (San)
看板Python
標題[問題] 關於求質數的問題
時間Fri Jan 11 20:38:08 2013
這是我們老師給的題目和解答
我想問為什麼他求是否為質數是用 if is_prime(n)
不是用%整除去算
我聽我們老師說這是一個函式
問題是我用print執行之後
是錯誤
我去網站上找質數的求法
都是用整除去求的
高手可以幫我解答一下嗎
題目d.寫一完整函式,計算[m,n]之間最大的質數;如果該質數不存在,則傳回-1。
def is_prime(n):
for i in range(2,n):
if n%i==0:
return False
return True
def max_prime(m,n):
if is_prime(n):
return n
elif m<n:
return max_prime(m,n-1)
return -1
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.175.8.39
→ uranusjr:我不知道是不是你發文的關係, 不過你的程式碼用的是全形 01/11 20:49
→ uranusjr:空白...請改成半形空白; 這個程式本身邏輯完全正確 01/11 20:49
邏輯看起來也像是正確 不過用print卻不能執行
※ 編輯: v3dys6f3a3j5 來自: 1.175.8.39 (01/13 00:13)
推 icps:我執行可以耶 01/13 01:25
→ nroha:複製來的縮排全型空白要改成半型的空白 01/13 01:47
→ nroha:is_prime( )是自訂函式 寫的就是參數n能否被2到n-1數整除 01/13 01:50
※ 編輯: v3dys6f3a3j5 來自: 1.175.4.52 (01/14 11:20)