В этом уроке Python я объясню, как найти сумму простых чисел в диапазоне в Python, используя различные методы и соответствующие примеры.
Число, которое делится только на 1 или само на себя, называется простым числом. Например: 2, 3, 5, 7, 11 и т. д.
Здесь мы увидим, как суммировать эти простые числа в диапазоне, то есть мы суммируем все простые числа, присутствующие, скажем, от 1 до 50.
Я напишу программу на Python, которая найдет все простые числа от 1 до 50, а затем просуммирует все эти числа и покажет результат.
Здесь мы попросим пользователя ввести диапазон, чтобы пользователь ввел нижний и верхний диапазон в соответствии со своими требованиями.
Полный код:
def is_prime_numbers(n):
for i in range(2,n//2+1):
if(n%i==0):
return(0)
return(1)
lower_range = int(input("Enter your lower range:"))
upper_range = int(input("Enter your upper range:"))
prime_numbers_list = []
sum_of_prime_numbers = 0
for i in range(lower_range, upper_range+1):
if(is_prime_numbers(i)):
prime_numbers_list.append(i)
print('The sum of prime numbers:', sum(prime_numbers_list))
Здесь мы просим пользователя выбрать диапазон, используя приведенный ниже код:
lower_range = int(input("Enter your lower range:"))
upper_range = int(input("Enter your upper range:"))
Когда пользователь выбирает диапазон чисел, я использую цикл for в Python, чтобы взять каждое число и проверить, является ли оно простым числом или нет.
Я написал функцию Python, которая проверяет, является ли число простым или нет.
def check_for_prime_numbers(n):
for i in range(2,n//2+1):
if(n%i==0):
return(0)
return(1)
Если число является простым числом, я добавляю это число в пустой список Python и, наконец, использую функцию sum(), чтобы получить сумму всех этих простых чисел.
На скриншоте ниже вы можете видеть, что после того, как я выполнил код, он выдал результат:

Enter your lower range: 7 Enter your upper range: 27 The sum of prime number: 90
Если вы не хотите использовать функцию sum() в Python, вы также можете использовать оператор сложения += в Python, как показано в исходном коде ниже:
def check_for_prime_numbers(n):
for i in range(2, n):
if(n%i==0):
return(0)
return(1)
lower_range_number = int(input("Enter your lower range: "))
upper_range_number = int(input("Enter your upper range: "))
list_of_prime_numbers = []
sum_of_prime_numbers_in_range = 0
for i in range(lower_range_number, upper_range_number+1):
if(check_for_prime_numbers(i)):
list_of_prime_numbers.append(i)
for i in list_of_prime_numbers:
sum_of_prime_numbers_in_range += i
print('The sum of prime number:',sum_of_prime_numbers_in_range)
Ссылается на изображение, представленное ниже, чтобы увидеть выходные данные после успешного выполнения кода.

В функции is_prime в Python я использовал выражение число**0,5 для вычисления квадратного корня числа. Квадратный корень участвует в простом числе для проверки логики.
При проверке факторов, чтобы определить, является ли число простым, нам нужно проверить только квадратный корень из числа. В Python это более точный и быстрый способ проверки простого числа.
Полный код:
def is_prime(number):
if number < 2:
return False
for i in range(2, int(number**0.5) + 1):
if number % i == 0:
return False
return True
def sum_of_prime_numbers(start, end):
current_number = start
prime_sum = 0
while current_number <= end:
if is_prime(current_number):
prime_sum += current_number
current_number += 1
return prime_sum
start_range = int(input("Enter the number to start the range: "))
end_range = int(input("Enter the number to end of the range: "))
result = sum_of_prime_numbers(start_range, end_range)
print(f"The sum of prime numbers in the range {start_range} to {end_range} is: {result}")
Выход:
Enter the number to start the range: 3 Enter the number to end of the range: 17 The sum of prime numbers in the range 3 to 17 is: 56
Обратитесь к изображению ниже, на нем отобразятся выходные данные после выполнения кода.

Здесь я создал специальную функцию на Python, которая будет принимать два аргумента, то есть нижний диапазон и верхний диапазон, чтобы найти сумму простых чисел в диапазоне.
Относится к приведенному ниже полному коду для нахождения суммы простых чисел в заданном диапазоне в Python.
def check_prime_numbers(lower_range, upper_range):
sum_of_prime_numbers = 0
for num in range(lower_range, upper_range + 1):
if num > 1:
for i in range(2, int(num ** 0.5) + 1):
if(num % i) == 0:
break
else:
sum_of_prime_numbers += num
return sum_of_prime_numbers
result = check_prime_numbers(3, 11)
print(f"The sum of prime numbers in the given interval is: {result}")
Выход:
The sum of prime numbers in the given interval is: 26
На снимке экрана ниже показан вывод после выполнения кода.
