🔍 Как вычислить простое число на Python: легкий способ в русском языке
Чтобы вычислить простое число на 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
number = int(input("Введите число: "))
if is_prime(number):
print("Число", number, "является простым")
else:
print("Число", number, "не является простым")
Этот код определяет функцию is_prime()
, которая принимает число в качестве аргумента и возвращает True
, если число является простым, и False
в противном случае. Затем пользователь вводит число, и функция is_prime()
вызывается для проверки простоты числа.
Детальный ответ
Как вычислить простое число на Python
Программа, которая вычисляет простое число на Python, может быть полезной для решения различных задач, связанных с числами и математикой. Простое число - это натуральное число, большее единицы, которое имеет ровно два делителя: единицу и само себя. В этой статье мы рассмотрим несколько подходов к вычислению простого числа на Python.
Метод перебора делителей
Простейший способ определить, является ли число простым, - это перебрать все числа от 2 до корня из данного числа и проверить, делится ли оно на любое из этих чисел без остатка. Если число делится без остатка хотя бы на одно из них, оно не является простым.
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
number = 17
if is_prime(number):
print(f"{number} является простым числом")
else:
print(f"{number} не является простым числом")
В этом примере мы определяем функцию is_prime, которая принимает число n и проверяет, является ли оно простым. Если число меньше 2, мы сразу возвращаем False, так как простые числа начинаются с 2. Далее мы перебираем все числа от 2 до корня из n и проверяем, делится ли n на них без остатка. Если делится, то число не является простым и мы возвращаем False. Если после перебора все проверки пройдены успешно, то число является простым и мы возвращаем True.
В основной части программы мы проверяем число 17 с помощью функции is_prime и выводим соответствующее сообщение в зависимости от результата.
Метод решета Эратосфена
Другой эффективный способ вычисления простых чисел - использовать решето Эратосфена. Это алгоритм, который позволяет нам найти все простые числа в заданном диапазоне.
def sieve_of_eratosthenes(n):
primes = [True] * (n + 1)
primes[0] = primes[1] = False
p = 2
while p ** 2 <= n:
if primes[p]:
for i in range(p ** 2, n + 1, p):
primes[i] = False
p += 1
return [i for i in range(n + 1) if primes[i]]
limit = 20
prime_numbers = sieve_of_eratosthenes(limit)
print(f"Простые числа в диапазоне от 0 до {limit}: {prime_numbers}")
В этом примере мы определяем функцию sieve_of_eratosthenes, которая принимает число n в качестве параметра и возвращает список простых чисел в диапазоне от 0 до n. Мы создаем список primes, в котором все элементы изначально установлены в True. Затем мы присваиваем элементам с индексами 0 и 1 значение False, так как они не являются простыми числами. Далее мы перебираем все числа от 2 до корня из n и, если число является простым (по значению элемента primes[p]), мы помечаем все его кратные числа как составные (устанавливаем значение False). Наконец, мы возвращаем список всех чисел до n, для которых значение primes[i] равно True.
В основной части программы мы используем функцию sieve_of_eratosthenes для нахождения простых чисел в диапазоне от 0 до 20 и выводим результат.
Заключение
В статье были представлены два метода вычисления простых чисел на Python. Метод перебора делителей позволяет проверить, является ли заданное число простым. Решето Эратосфена позволяет найти все простые числа в заданном диапазоне. Оба метода имеют свои преимущества и широко применяются в программировании.