この質問は単純ですが、今回は単なる1つではなく3つの異なるメソッドを使用する必要があります。それらは:isPrime、getPrimes、sumPrimesです。3つのメソッドを使用して200万以下の素数の合計を
これは私のオリジナルである:
import sys
print("")
def is_prime(n):
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
prime_sum = 0
for i in range(2, 10): #change 10 back to 2000000
if is_prime(i):
prime_sum += i
print ("Sum of all the primes below 10 = ", prime_sum)
私の問題は、私は上記のステートメントは、sumPrimesなど、さまざま内で動作するようにprime_sum = 0で始まる得ることができる方法ですか?私はこれをやってみた:
def sum_primes():
prime_sum = 0
for i in range(2, 10): #change 10 back to 2000000
if is_prime(i):
prime_sum += i
#print ("Sum of all the primes below 2,000,000 = ", prime_sum)
print ("Sum of all the primes below 10 = ", prime_sum)
return sum_primes()
しかし、それは動作しません。私はPythonの初心者ですから、フィードバックをいただければ幸いです。ありがとう。
のソリューションの合計を持っています。はるかに高速。 –
「うまくいきません」は、問題文**ではありません。また、それらはちょうど*関数*であり、*メソッド*ではありません。 –