Маска числа — это последовательность цифр, в которой могут встречаться специальные символы
Пример. Маске 123*4?5 соответствуют числа 123405 и 12376415. Найдите все натуральные числа,
В ответе запишите все найденные числа в порядке возрастания.
Ответ:
Будем последовательно рассматривать каждое целое число,
Приведём решение на языке Python.
from fnmatch import *
for x in range(0, 10**9, 3127):
# Перебираем все числа от 0 с шагом 3127, будут получены числа кратные 3127
if fnmatch(str(x), '12*93?1?'):
# Проверяем полученное число соответствию заданию
print(x)
В результате работы программа должна вывести следующее:
120993011
122093715
126193212
127293916
Приведём решение Сергея Донец на языке PascalABC.NET.
begin
var d:=3127;
foreach var x in Range(d, 10**9, d) do
if x.ToString.IsMatch('^12.*93.1.$')//12*93?1?
then Println(x);
end.

