Форум » Обработка целых чисел » Задание 25 » Ответить

Задание 25

Julia: Пусть M(N) — произведение 5 наименьших различных натуральных делителей натурального числа N, не считая единицы. Если у числа N меньше 5 таких делителей, то M(N) считается равным нулю. Найдите 5 наименьших натуральных чисел, превышающих 500 000 000, для которых 0 < M(N) < N. В ответе запишите найденные значения M(N) в порядке возрастания соответствующих им чисел N. Моё решение и ответ: c= 0 for i in range(500000001,501000000): sq = int(i**0.5) k=0 md=1 for x in range(2,sq+1): if i%x == 0: k+=1 md*=x if k>=5: break if md<i and md>0: print(md) c+=1 if c==5: break 1 1008 7225 1797092 48408867 Правильный ответ: 1008 1797092 48408867 1800 1156923 Не могу понять, в чём ошибка?

Ответов - 1

Поляков: Программу оформите, пожалуйста (см. замечание в желтой рамке в верхней части страницы). Так сложно что-то понять.



полная версия страницы