Решение: Построение числа в двоичной системе
На вход алгоритма подаётся натуральное число $N$. Алгоритм строит по нему новое число $R$. Сначала строится двоичная запись числа $N$. Если число $N$ чётное, к этой записи справа и слева дописываются по две единицы. Если число $N$ нечётное, в конец двоичной записи справа дописываются два нуля, а в начало слева дописывается единица. Полученная запись является двоичной записью числа $R$, после чего результат переводится в десятичную систему. Укажите наибольшее число $R$, не превышающее 56, которое может быть результатом работы алгоритма.
Решение по шагам
4 шагаПроверим небольшие значения $N$, так как требуется найти максимальный результат, не превышающий 56.
Для нечётного числа $N=5$ двоичная запись имеет вид $101_2$. По правилу получаем $1\,101\,00_2=110100_2$.
Переведём результат в десятичную систему: $110100_2=32+16+4=52$.
Для следующего нечётного числа $N=7$: $111_2\rightarrow111100_2=60$, что больше 56. Для чётных чисел ближайший результат также превышает 56 либо оказывается меньше 52.
Где здесь ошибаются
Забывают, что при нечётном $N$ два нуля добавляются справа.
Неправильно переводят двоичное число $110100_2$ в десятичную систему.
Проверяют только нечётные или только чётные значения $N$.