Задание №4555.
Создание собственной программы. ЕГЭ по информатике
Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
1) символ «?» означает ровно одну произвольную цифру;
2) символ «*» означает любую последовательность цифр произвольной длины; в том числе «*» может задавать и пустую последовательность.
Например, маске 123*4?5 соответствуют числа 123405 и 12300405.
Среди натуральных чисел, не превышающих 10
8, найдите все числа, соответствующие маске 1234*58, делящиеся на 21 без остатка.
В ответе сначала запишите все найденные числа в порядке возрастания, а затем – соответствующие им результаты деления этих чисел на 21.
Пояснение:
Решим задание, написав программу на языке программирования Python.
for x in range(21, 10 ** 8 + 1, 21): s = str(x) if s[0:4] == '1234' and s[-2:] == '58': print(s, int(s) // 21) |
Таким образом, получаем
Найденные числа | Результаты их деления на 21 |
1234758 | 58798 |
12341658 | 587698 |
12343758 | 587798 |
12345858 | 587898 |
12347958 | 587998 |
Показать ответ
1234758 12341658 12343758 12345858 12347958 58798 587698 587798 587898 587998
Источник: ФИПИ. Открытый банк тестовых заданий
Сообщить об ошибке
Тест с похожими заданиями