Задание 25. Информатика. 2023-1

Просмотры: 90
Изменено: 23 ноября 2024

Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
– символ «?» означает ровно одну произвольную цифру;
– символ «*» означает любую последовательность цифр произвольной длины; в том числе «*» может задавать и пустую последовательность. Например, маске \(123*4?5\) соответствуют числа \(123405\) и \(12300405\).

Среди натуральных чисел, не превышающих \(10^{8}\), найдите все числа, соответствующие маске \(11*223\), делящиеся на \(149\) без остатка. В ответе запишите в первом столбце таблицы все найденные числа в порядке возрастания, а во втором столбце – соответствующие им результаты деления этих чисел на \(149\). Количество строк в таблице для ответа избыточно.

Решение:

Python


for n in range(4):
    for i in range(10**n):
        x = 11*10**(3+n) + i*10**3 + 223
        if x % 149 == 0:
            print(x, x // 149)

Ответ:
\(1166223\) \(7827\)
\(11000223\) \(73827\)
\(11149223\) \(74827\)
\(11298223\) \(75827\)
\(11447223\) \(76827\)
\(11596223\) \(77827\)
\(11745223\) \(78827\)
\(11894223\) \(79827\)