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

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

Какое число нужно ввести в автомат, чтобы в результате получилось 111?

Условие

Автомат обрабатывает натуральное число N (0 ≤ N ≤ 255) по следующему алгоритму.1. Строится восьмибитная двоичная запись числа N.2. Все цифры двоичной записи заменяются на противоположные (0 на 1, 1 на 0).3. Полученное число переводится в десятичную запись.4. Из нового числа вычитается исходное, полученная разность выводится на экран. Пример. Дано число N = 13. Алгоритм работает следующим образом.1. Восьмибитная двоичная запись числа N: 00001101.2. Все цифры заменяются на противоположные, новая запись: 11110010.3. Десятичное значение полученного числа 242.4. На экран выводится число 242 − 13 = 229. Какое число нужно ввести в автомат, чтобы в результате получилось 111?

Ответ

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

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

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

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

    Решение. Заметим, что инверсия двоичной восьмибитной записи числа в сумме с исходным числом дает 11111111, то есть

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

  1. (В исходном примере: 00001101 + 11110010 =…

  2. Тем самым, искомое число равно…

  3. Примечание. Заметим, что по условию из нового…

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

  5. # перевод в десятичную систему if r - n ==…

  6. - N == 111: print (N)…

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

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

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