Ответ:

Наименьший собственный делитель ищем перебором от 2. Если он найден, наибольший собственный делитель равен числу, делённому на этот наименьший делитель. Если делителей нет, M = 0.

n = 452022
found = 0

while found < 5:
    smallest = 0
    d = 2
    while d * d <= n:
        if n % d == 0:
            smallest = d
            break
        d += 1

    if smallest == 0:
        M = 0
    else:
        largest = n // smallest
        M = smallest + largest

    if M % 7 == 3:
        print(n, M)
        found += 1

    n += 1