Site icon Информатика Эксперт

Е5.53 Укажите максимальное число R, которое может быть результатом данного алгоритма, при условии, что N не больше 12.

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом:

  1. Строится двоичная запись числа N.
  2. Далее эта запись обрабатывается по следующему правилу:
    • а) если число чётное, то к двоичной записи слева дописывается 10;
    • б) если число нечётное, то к двоичной записи слева дописывается 1 и справа дописывается 01.
  3. Полученная таким образом запись является двоичной записью искомого числа R.
  4. Результат переводится в десятичную систему и выводится на экран.

Например, для исходного числа 4 = 1002 результатом является число 101002 = 20, а для исходного числа 5 = 1012 это число 1101012 = 53.

Укажите максимальное число R, которое может быть результатом данного алгоритма, при условии, что N не больше 12.

В ответе запишите это число в десятичной системе счисления.

Ответ:

 

ЕГЭ по информатике Основная волна 08.06.2024 kompege.ru – задание №5 

Решение:

Объяснение решения задачи

Для решения данной задачи мы написали программу на языке Python, которая выполняет следующие шаги:

  1. Создаём пустой список a.
  2. Проходим по всем числам от 1 до 11 включительно (поскольку N не больше 12).
  3. Для каждого числа i строим его двоичную запись n (без префикса ‘0b’).
  4. Если число чётное (проверка i % 2 == 0), то слева к двоичной записи дописываем «10».
  5. Если число нечётное, то слева к двоичной записи дописываем «1», а справа «01».
  6. Преобразуем полученную двоичную запись обратно в десятичное число и сохраняем его в переменной r.
  7. Если значение r больше 50, добавляем его в список a.
  8. После завершения цикла находим максимальное значение в списке a и выводим его.

Таким образом, программа находит максимальное значение числа R, которое может быть результатом данного алгоритма при условии, что N не больше 12.

Ответ: 109

Exit mobile version