Задание 5. Информатика. ЕГЭ. Поляков-1754

Просмотры: 14
Изменено: 6 апреля 2025

Автомат обрабатывает натуральное число \(N < 256\) по следующему алгоритму:

  1. Строится восьмибитная двоичная запись числа \(N.\)
  2. Инвертируются все разряды исходного числа, кроме последней единицы и стоящих за ней нулей (\(0\) заменяется на \(1\), \(1\) на \(0\)).
  3. Полученное число переводится в десятичную систему счисления.

Для какого значения \(N\) результат работы алгоритма равен \(221?\)

Решение:

Python


def R(N):
    bn = f'{N:08b}'
    pos = bn.rfind('1')
    s = bn[:pos].replace('0', 'x').replace('1', '0').replace('x', '1')
    return int(s + bn[pos:], 2)

for N in range(255, -1, -1):
    if R(N) == 221:
        print(N)
        break

Ответ: \(35\)