0
運行該程序時,它計算所需的正確答案。 但是,if循環中的返回函數不返回所需的答案,而是返回「無」。 我試過了,並且我確定它有些愚蠢的我失蹤了。python返回函數不通過值
def is_prime(n):
#function tocheck if number is prime
for i in range(2,n):
#print (i)
if n%i==0:
return False
return True
def gap(g,m,n):
#Function to find prime number
#pair with prime gap "g"
print (is_prime(m),m)
print (is_prime(m+g),m+g)
if is_prime(m) and is_prime(m+g):
print ("This is the right answer : ",[m,g+m])
#value not returning
return [m,g+m]
elif g+m<n:
print("restart with",m+1)
gap(g,m+1,n)
print (gap(8,300,400))
請修復您的縮進。你的代碼是不可讀的。 –
在'elif'中,你需要使用'return'語句'返回間隙(g,m + 1,n)' – ettanany
在'elif'塊的末尾加上'return gap(g,m + 1,n)' – MedAli