Присоединиться

11 класс·средний уровень

Укажите максимальное число N, для которого результат работы алгоритма

Условие

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

  1. Строится двоичная запись числа N.

  2. К этой записи дописываются справа ещё два разряда по следующему правилу: если N чётное, в конец числа (справа) дописываются два нуля, в противном случае справа дописываются две единицы. Например, двоичная запись 1001 числа 9 будет преобразована в 100111.Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа — результата работы данного алгоритма.

Укажите максимальное число N, для которого результат работы алгоритма будет меньше 134. В ответе это число запишите в десятичной системе счисления.

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. Заметим, что если число чётное, то в конец его двоичной записи добавляются цифры 00, а если нечётное — цифры 11.Рассмотрим числа, меньшие 134, и найдем максимальное число, которое является результатом работы алгоритма. 133₁₀ = 1000 0101₂ — не может являться результатом работы алгоритма.132₁₀ = 1000 0100₂ — не может являться результатом работы алгоритма.131₁₀ = 1000 0011₂ — не может являться результатом работы алгоритма.130₁₀ = 1000 0010₂ — не может являться результатом работы алгоритма.129₁₀ = 1000 0001₂ — не может являться результатом работы алгоритма.128₁₀ = 1000 0000₂ — может являться результатом работы алгоритма. Выполним обратное преобразование числа 128 согласно алгоритму. Получим ответ —

Осталось ещё 2 шага

  1. Приведём другое решение на языке Python. for…

  2. # перевод в десятичную систему if r <…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Анализ и построение алгоритмов для исполнителей»

Укажите максимальное число N, для которого результат работы алгоритма — решение с объяснением | Lom Ai