Задача к ЕГЭ по информатике на тему «делители числа» №1

Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [543210;563355]  , числа, имеющие ровно пять различных нечётных натуральных делителя (включая единицу, а также само число, если оно нечётное). В ответ запишите такие числа через пробел в порядке возрастания.

def divs(x): # функция, которая возращает список делителей числа
    d = set()
    for i in range(1,int(x**0.5)+1):
        if x % i == 0:
            d.add(i)
            d.add(x//i)
    return sorted(d)
for x in range(543210,563356):
    d = [i for i in divs(x) if i % 2 != 0] # список , в котором храняться только нечётные делители числа
    if len(d) == 5: # если нечётных делителей ровно 5
        print(x) # вывод ответа

Ответ: 559682
Оцените статью
Я решу все!