この関数は、数が素数であるかどうかを確認するために作成しました。それ自体は正常に動作しているようですが、別の関数で使用すると動作しないようです。
これが私のIsPrime関数です。
def is_prime(n):
boolean = False
if n == 2 or n == 3:
return True
for x in range(3, int(n**0.5)+1, 2):
if n % x == 0:
return False
return True
以下の関数は、2000000未満のすべての素数の合計を計算します。
def problem10(prime, result):
if prime > 2000000:
return
if is_prime(prime):
print 'prime is ', prime
result = result + prime
problem10(prime + 1, result)
return result
どこが間違っているのか理解できません。
コメントをいただければ幸いです。