№22

Ниже на 5-ти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм напечатает сначала 2, а потом 14.
Источник: ссылка

Перебираем все x и проверяем a и b на соответствие необходимым значениям.

Рекомендую не исправлть везде x на i, а просто добавить строку x = i, ведь это упростит перепроверку.
#Дано
x = int(input())
a = 0
b = 1
while x > 0:
    a += 1
    b *= x % 10
    x = x // 10
print(a)
print(b)
#Задание 22
for i in range(1000):
    x = i
    a = 0
    b = 1
    while x > 0:
        a += 1
        b *= x % 10
        x = x // 10
    if a == 2 and b == 14:
        print(i)