Петя посылает Ване числовые коды от 0 до 255. Однако, эти коды особо важны — их могут перехватить, поэтому ребята договорились их шифровать. Алгоритм шифрования состоит из пяти шагов и выглядит следующим образом: Записать пересылаемое число в виде восьмиразрядного битового кода (от 00000000 до 11111111). Определить количество нулей в записи битового кода a и количество единиц в записи битового кода b. Левые a битов сдвинуть циклически влево на b разрядов, а правые b битов сдвинуть циклически вправо на a разрядов. Выполнить поразрядную инверсию. Перевести число в десятичную систему счисления. То есть число 129 будет преобразовано сначала в 10000001, затем разобьется на части 100000 01, которые преобразуются в 000010 01, после инверсии 11110110, что равно 246. Определите, какое число получит Ваня, если Петя закодировал число 142
Давайте преобразуем число 142 в восьмиразрядный битовый код:
142 = 10001110
Определим количество нулей (a) и единиц (b):
a = 4
b = 4
Выполним циклические сдвиги:
10001110 -> 11101000
11101000 разбиваем на части:
111010 00
Сдвиг влево на 4 разряда:
010000 11
Выполним поразрядную инверсию:
101111 00
Переведем число обратно в десятичную систему:
10111100 = 188
Итак, Ваня получит число 188.