имеющие ровно три нетривиальных делителя. Назовём нетривиальным делителем натурального числа его делитель, не равный единице и самому числу. Например, у числа 6 есть два нетривиальных делителя: 2 и 3. Найдите все натуральные числа, принадлежащие отрезку [123456789; 223456789] и имеющие ровно три нетривиальных делителя. Для каждого найденного числа запишите в ответе его наибольший нетривиальный делитель. Ответы расположите в порядке возрастания.
Ответ:
Решение:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
for i in range(123456789, 223456789+1): k=0 d=2 maxd=0 if int(i**0.5) == i**0.5: while d * d < i: if i%d == 0: k += 2 if maxd == 0: maxd = i // d d += 1 if k == 2: print(maxd) |
Ответ: 1225043; 1295029; 1442897
