def allizb(): #функция в которой я получаю все избыточные числа до 28124(от 12 потому что по условию это самое маленькое избыточное число)
all_izb = []
for i in range(12,28124): #если число избыточное добавляю в массив, в конце верну массив со всеми числами
if izb(i) == True:
all_izb.append(i)
else:
return all_izb
i = 1
otv = [] #массив куда буду вносить числа которые не могут быть суммой двух избыточных чисел
for i in range(12,28124):
for g in alizb:
for h in alizb:
if i != (g+h): #если i не равна сумме 2 избыточных чисел из массива то добавляем
otv.append(i)
print(i)
else:
print( sum(otv )) # в конце выводим сумму всех чисел
n = 30 # число, до которого хотим найти простые числа
numbers = list(range(2, n + 1))
for number in numbers:
if number != 0:
for candidate in range(2 * number, n+1, number):
numbers[candidate-2] = 0
print(*list(filter(lambda x: x != 0, numbers)))
def simple(n):
lst=[2]
for i in range(3, n+1, 2):
if (i > 10) and (i%10==5):
continue
for j in lst:
if j*j-1 > i:
lst.append(i)
break
if (i % j == 0):
break
else:
lst.append(i)
if max(lst) == n:
return True
else:
return False
simple = [i for i in range((2*10**6) + 1) if simple(i) == True]
print(simple)