"""
Каждый последующий цикл увеличивает значение последнего простого числа пропорционально квадрату последнего простого числа предыдущего цикла
"""
L=[2]
def filter_getprime(P=L):
S=list(range(1+P[-1],P[-1]*P[-1]))
for p in P:
F1=list(filter(lambda x: x%p!=0,S))
S=F1
return F1
print('')
print('!!! для более пяти циклов необходим мощный компьютер !!!\n')
print('в случае пяти циклов время вычисления составит несколько минут\n')
M= int(input('сколько циклов сделать ? = '))
for m in range(1, M+1):
D=filter_getprime(L)
L=L+D
print('')
print(f'последнее простое число = {L[-1]}\n')
print(f'количество простых чисел ={len(L)}\n')
M1=input('Вы хотите увидеть все простые числа? Y or N
=')
if M1=='Y':
print('')
print(L)