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

Ответы 1

  • 1. Отметим, что приписывание к двоичному числу двух младших разрядов предполагает предварительный сдвиг этого числа влево на два разряда (что равносильно умножению на 2²=4), а затем установку двух младших разрядов в соответствующие приписываемым битам значения. Следовательно, можно записать, что 4N+a>43, где a - число, образованное приписываемыми справа битами, которое не может превышать 11(2)=3(10) 4N+[0..3]≥44, откуда минимальное N=11 Теперь запишем N=11 в двоичной системе и применим к нему заданный алгоритм. N=1011(2), число единиц три, нечетное, приписываем 1, получая 10111. Теперь число единиц четное, приписываем 0 и получаем R=101110(2). В десятичной записи ему соответствует число 46. Ответ: 46
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years