1. Главная
  2. Библиотека
  3. Программирование
  4. На вход алгоритма подаётся натуральное число N. Алгорит...
Решение задачи

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись числа N. 2. К этой записи дописываются справа ещё два разряда по следующему правилу: а) складываются все цифры двоичной

  • Программирование

Условие:

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. К этой записи дописываются справа ещё два разряда по следующему правилу:
а) складываются все цифры двоичной записи числа N, и остаток от деления суммы на 2 дописывается в конец числа (справа).
Например, запись 11100 преобразуется в запись 111001;
б) над этой записью производятся те же действия – справа дописывается остаток от деления суммы её цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью результирующего числа R. Укажите такое наименьшее число N, для которого результат работы данного алгоритма больше числа 77. В ответе это число запишите в десятичной системе счисления.

Решение:

Запишем алгоритм подробнее. Пусть задано натуральное число N. Его двоичная запись обозначим как b. Далее алгоритм делает следующие шаги: 1. Находим сумму цифр двоичной записи числа N. Обозначим её как S. При этом S является числом, равным количеству единиц в записи N. 2. Вычисляем остаток от деления S на 2, то есть c₁ = S mod 2, и дописываем его справа к записи b. 3. Теперь снова считаем сумму цифр полученной записи (то есть сумму единиц как в исходной записи, так и c₁). Обозначим её S = S + c₁. 4. Вычисляем c₂ = S mod 2 и дописываем его к правому краю записи. 5. Полученная запись – это двоич...

Не нашел нужную задачу?

Воспользуйся поиском

Выбери предмет