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

Ответы на вопрос

for n in range(255):
n_old = n
n = bin(n)[2:] # 1. Перевод в 2 сс + отделение лишних знаков
while len(n) != 8: # Добиваем до восьмибитной
n = '0' + n
x = '' #
for i in range(len(n)): #
if n[i] == '1': #
x += '0' # 2. Замена цифр на противоположные
else: #
x += '1' #
n = x #
n = int(n, 2) # 3. Перевод в 10 сс
n -= n_old # 4. Вычитается исходное
if n == 97:
print(n_old) # Ответ: 79



Давайте рассмотрим этот алгоритм шаг за шагом и найдем число, которое нужно ввести в автомат:
Строится восьмибитная двоичная запись числа N. Поскольку 0 ≤ N ≤ 255, это восьмибитное число. Например, если мы хотим получить 97 в результате, то в двоичной записи это будет "01100001" (97 в двоичной системе счисления).
Все цифры двоичной записи заменяются на противоположные. Для "01100001" это станет "10011110".
Полученное число переводится в десятичную систему счисления. "10011110" в десятичной системе счисления равно 158.
Из нового числа вычитается исходное, полученная разность выводится на экран. 158 - 97 = 61.
Итак, чтобы получить 97 в результате выполнения этого алгоритма, вам нужно ввести в автомат число 61.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili