Задание 5. Информатика. ЕГЭ. Апробация. 05.03.2025-2
- Просмотры: 825
- Изменено: 8 марта 2025
На вход алгоритма подаётся натуральное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом.
- Строится двоичная запись числа \(N.\)
- Далее эта запись обрабатывается по следующему правилу:
- а) если число чётное, то к двоичной записи слева дописывается \(10;\)
- б) если число нечётное, то к двоичной записи числа слева дописывается \(1\) и справа дописывается \(01.\)
- Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа \(4_{10} = 100_2\) результатом является число \(20_{10} = 10100_2,\) а для исходного числа \(5_{10} = 101_2\) это число \(53_{10} = 110101_2.\)
Укажите максимальное число \(R,\) которое может быть результатом работы данного алгоритма, при условии, что \(N\) не больше \(12.\) В ответе запишите это число в десятичной системе счисления.
Решение:
Python
def R(N):
bn = f'{N:b}'
if N % 2 == 0:
bn = '10' + bn
else:
bn = '1' + bn + '01'
return int(bn, 2)
print(max(R(N) for N in range(1, 13)))
Ответ: \(109\)