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

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

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

Условие:

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

Решение:

Найдем число N, для которого итоговое число R, полученное по алгоритму, больше 77. Алгоритм выглядит так: 1. Представляем число N в двоичной системе (запишем его как строку битов). 2. Определяем сумму цифр (единиц) этой двоичной записи и вычисляем остаток от деления этой суммы на 2. Полученный остаток (0 или 1) дописывается справа к записи – это первый добавленный бит, обозначим его как a. 3. К полученной строке (исходные биты числа N + бит a) снова вычисляем сумму цифр (единиц) и берём остаток от деления на 2, который дописывается справа как второй добавленн...

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

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

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