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


Решение:
Решение программой:
a = []
for x in range(1,1000):
n = bin(x-x%8+x%2)[2:]
n = n + str(n.count('1')%2)
n = n + str(n.count('1')%2)
if int(n,2) > 97:
a.append(int(n,2))
print(min(a))
Решение руками:
Число 98 в двоичной системе счисления - 1100010. Делая шаги назад, получим число 11001, что равняется 25. Число, после вычитания из него остатка деления его же на 8, должно быть кратным 8. Ближайшее число, которое делится на 8 - 24. Тогда после работы алгоритма получим число 1100110, что равняется 102 в десятичной системе счисления.
Ответ: 102
Сообщение об ошибке
Расскажите, в каком месте допущена ошибка, мы как можно быстрее её исправим. Спасибо за обратную связь!

МГ | Pro | ProMax | |
Практика на платформе | |||
Отслеживание прогресса обучения | |||
Двухуровневое домашнее задание после каждого вебинара | |||
Все материалы составлены экспертом ЕГЭ | |||
Персональный менеджер | |||
Личный куратор | |||
Разбор ошибок личным куратором | |||
Еженедельные созвоны с куратором для закрытия индивидуальных пробелов | |||
Составление индивидуального расписания |

счёта
средств
подтверждено!
Теперь вы можете приступить
к следующему уроку
курса по математике
замены
Для смены номера телефона
мы отправили Вам код по СМС,
введите его в поле ниже.
Электронная почта
На почту придет чек об оплатеНажимая кнопку "купить", Вы выражаете своё согласие с офертой оказания услуг и принимаете их условия
Здравствуйте!
Выберите информацию о себе ниже

Оплата прошла успешно!
