Автомат обрабатывает натуральное число
по следующему алгоритму:
- Строится восьмибитная двоичная запись числа
.
- Удаляется последняя цифра двоичной записи.
- Запись «переворачивается», то есть читается справа налево.
- Полученное число переводится в десятичную запись и выводится на экран.
Каково наименьшее число, меньшее , которое после обработки автоматом не изменится?
for i in range(1, 100):
s = ’0’ * (8 - len(bin(i)[2:])) + bin(i)[2:]
s = s[:len(s) - 1]
s = s[::-1]
if int(s, 2) == i:
print(i)
break
Ответ: 24