def primals_nm(n, m):
"""
Возвращает список простых чисел с n-го по m-е.
Параметры:
n (int): начальный порядковый номер простого числа (1-й, 2-й и т.д.)
m (int): конечный порядковый номер простого числа
Возвращает:
list: список простых чисел с n-го по m-е включительно
"""
if n > m:
return []
def is_prime(num):
"""Проверяет, является ли число простым."""
if num < 2:
return False
if num == 2:
return True
if num % 2 == 0:
return False
for i in range(3, int(num**0.5) + 1, 2):
if num % i == 0:
return False
return True
primes = []
candidate = 2
# Находим нужное количество простых чисел
while len(primes) < m:
if is_prime(candidate):
primes.append(candidate)
candidate += 1
# Возвращаем срез с n-1 по m (так как индексация с 0)
return primes[n-1:m]
# Пример использования
if __name__ == "__main__":
# Пример 1: простые числа с 1-го по 5-е
print(primals_nm(1, 5)) # [2, 3, 5, 7, 11]
# Пример 2: простые числа со 2-го по 4-е
print(primals_nm(2, 4)) # [3, 5, 7]
# Пример 3: простые числа с 3-го по 7-е
print(primals_nm(3, 7)) # [5, 7, 11, 13, 17]