Сложение простых чисел
Сумма простых чисел меньше 10 равна 2 + 3 + 5 + 7 = 17.
Найдите сумму всех простых чисел меньше двух миллионов.
Эта задача весьма похожа на седьмую. Поэтому давайте возьмём оттуда функцию проверки числа, является ли оно простым.
def is_simple(number):
for i in range(2, int(number**0.5)+1):
if number % i == 0:
return False
return True
Теперь, как и в том же седьмом номере будем перебирать простые числа, начиная с тройки, поставив шаг 2 (ибо чётные числа автоматически не являются простыми). Только на этот раз для диапазона выборки укажем верхнюю границу в 2000000 и создадим переменную, в которой будет записана сумма всех простых чисел.
answer = 2 # Учитываем, что 2 – тоже простое число
for number in range(3, 2000000, 2):
if is_simple(number):
answer += number
print(answer)
# Output: 142913828922