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

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

Укажите минимальное число R, которое превышает число 396 и может

Условие

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

Ответ

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

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

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

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

    Решение. Заметим, что 396₁₀ = 110001100₂, исходное число N — 1100011₂. Значит, в результате работы алгоритма не может получится двоичных чисел 110001101₂, 110001110₂ и 110001111₂. Рассмотрим следующее число N — 1100100₂. В результате работы алгоритма получится число 110010010₂ = 402₁₀. Это и будет ответ.

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

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

  2. s += str(s.count("1") %…

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

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

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

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

Укажите минимальное число R, которое превышает число 396 и может — решение с объяснением | Lom Ai