Задача к ЕГЭ по информатике на тему «Запись числа в двоичной системе счисления» №1

Автомат обрабатывает натуральное число N по следующему алгоритму:

   1. Строится двоичная запись числа N.

   2. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.

   3. Предыдущий пункт повторяется для записи с добавленной цифрой.

   4. Результат переводится в десятичную систему и выводится на экран.

Пример. Дано число N = 17. Алгоритм работает следующим образом:

   1. Двоичная запись числа N: 10001.

   2. Сумма цифр двоичной записи 2, остаток от деления на 2 равен 0, новая запись 100010.

   3. Сумма цифр полученной записи 2, остаток от деления на 2 равен 0, новая запись 1000100.

   4. На экран выводится число 68.

Определите, какое число было подано на Автомат, если в результате на экране появилось наименьшее число, большее 170.

for n in range(1,1000):
    t = bin(n)[2:]
    if t.count(’1’) % 2 == 0:
        t += ’00’
    else:
        t += ’10’
    r =int(t,2)
    if r > 170:
        print(n)
        break

Ответ: 43
Оцените статью
Я решу все!