Какое число нужно ввести в автомат, чтобы в результате получилось 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?
Ответ
Ответ и полный разбор откроются после входа
Посмотреть ответРешение по шагам
Как рассуждать
Решение. Заметим, что инверсия двоичной восьмибитной записи числа в сумме с исходным числом дает 11111111, то есть
Осталось ещё 6 шагов
(В исходном примере: 00001101 + 11110010 =…
Тем самым, искомое число равно…
Примечание. Заметим, что по условию из нового…
Приведём другое решение на языке Python. for…
# перевод в десятичную систему if r - n ==…
- N == 111: print (N)…
Бесплатно · займёт минуту