Маска числа — это последовательность цифр, в которой могут встречаться специальные символы
Например, маске 123*4?5 соответствуют числа 123405 и 12376415.
Найдите все натуральные числа, не превышающие 109, которые соответствуют маске 4*64*9?7 и при этом без остатка делятся
Ответ:
Будем последовательно рассматривать каждое целое число,
Приведём решение на языке Python.
from fnmatch import *
for x in range(0, 10**9, 9117):
# Перебираем все числа от 0 с шагом 9117, будут получены числа кратные 9117
if fnmatch(str(x), '4*64*9?7'):
# Проверяем полученное число соответствию заданию
print(x)
В результате работы программа должна вывести следующее:
464967
41764977
406444977
436439907
464337927
464884947

