Чтобы найти простые числа в Python, вы можете использовать несколько методов. Вот несколько часто используемых подходов:
- Метод пробного разделения:
- Перебор чисел от 2 до заданного числа.
- Для каждого числа проверьте, делится ли оно на любое число от 2 до квадратного корня.
- Если оно делится на любое число, оно не является простым. В противном случае это простое число.
import math
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(math.sqrt(n)) + 1):
if n % i == 0:
return False
return True
- Решето Эратосфена:
- Создайте логический список размером n+1 и инициализируйте все элементы как True.
- Итерация от 2 до квадратного корня из n.
- Для каждого найденного простого числа пометьте все его кратные как ложные.
- Остальные числа, отмеченные как True, являются простыми числами.
def sieve_of_eratosthenes(n):
primes = [True] * (n + 1)
primes[0] = primes[1] = False
p = 2
while p * p <= n:
if primes[p]:
for i in range(p * p, n + 1, p):
primes[i] = False
p += 1
return [num for num, is_prime in enumerate(primes) if is_prime]
- Использование библиотеки SymPy:
- SymPy — это библиотека Python для символьной математики, предоставляющая различные функции для работы с простыми числами.
from sympy import isprime
def check_prime(n):
return isprime(n)
Это всего лишь несколько методов поиска простых чисел в Python. Вы можете выбрать метод, который лучше всего соответствует вашим потребностям.