
Задача по теме: "Маски"
Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
- символ «?» означает ровно одну произвольную цифру;
- символ «*» означает любую последовательность цифр произвольной длины; в том числе «*» может задавать и пустую последовательность.
Например, маске 123*4?5 соответствуют числа 123405 и 12300405. Среди натуральных чисел, не превышающих 108, найдите все числа, соответствующие маске ?19*8?3, делящиеся на 5171 без остатка.
В ответе запишите в первом столбце таблицы все найденные числа в порядке возрастания, а во втором столбце - соответствующие результаты деления этих чисел на 5171.


Решение:
Для нахождения всех подходящих чисел напишем программу на языке программирования Python:
from fnmatch import *
for x in range(0, 10**8, 5171): # Перебираем все числа от 0 с шагом 5171, будут получены числа кратные 5171
if fnmatch(str(x), '?19*8?3'):# Проверяем полученное число соответствию заданию
print(x, x // 5171)
Данный код использует модуль fnmatch для сопоставления строк с шаблонами. В цикле перебираются все числа от 0 до 10^8 с шагом 5171. Для каждого числа проверяется, соответствует ли оно шаблону '?19*8?3', где символ '?' заменяет любой одиночный символ, а символ '*' заменяет любую последовательность символов. Если число соответствует шаблону, оно выводится на экран, а также выводится результат деления этого числа на 5171.
Ответ: 11908813 2303 71995833 13923 81975863 15853 91955893 17783
Сообщение об ошибке
Расскажите, в каком месте допущена ошибка, мы как можно быстрее её исправим. Спасибо за обратную связь!

МГ | Pro | ProMax | |
Практика на платформе | |||
Отслеживание прогресса обучения | |||
Двухуровневое домашнее задание после каждого вебинара | |||
Все материалы составлены экспертом ЕГЭ | |||
Персональный менеджер | |||
Личный куратор | |||
Разбор ошибок личным куратором | |||
Еженедельные созвоны с куратором для закрытия индивидуальных пробелов | |||
Составление индивидуального расписания |

счёта
средств
подтверждено!
Теперь вы можете приступить
к следующему уроку
курса по математике
замены
Для смены номера телефона
мы отправили Вам код по СМС,
введите его в поле ниже.
Электронная почта
На почту придет чек об оплатеНажимая кнопку "купить", Вы выражаете своё согласие с офертой оказания услуг и принимаете их условия
Здравствуйте!
Выберите информацию о себе ниже

Оплата прошла успешно!
