501.py
На вход алгоритма подаётся натуральное число N.
Алгоритм строит по нему новое число R следующим образом.
Строится двоичная запись числа N.
Далее эта запись обрабатывается по следующему правилу:
а) если число чётное, то к двоичной записи числа
слева дописывается 10;
б) если число нечётное, то к двоичной записи числа
слева дописывается 1 и справа дописывается 01.
Полученная таким образом запись является
двоичной записью искомого числа R.
Результат переводится в десятичную систему и выводится на экран.
Укажите максимальное число R, которое может быть результатом
работы данного алгоритма, при условии, что N не больше 12.
В ответе запишите это число в десятичной системе счисления.
"""
На вход алгоритма подаётся натуральное число N.
Алгоритм строит по нему новое число R следующим образом.
Строится двоичная запись числа N.
Далее эта запись обрабатывается по следующему правилу:
а) если число чётное, то к двоичной записи числа
слева дописывается 10;
б) если число нечётное, то к двоичной записи числа
слева дописывается 1 и справа дописывается 01.
Полученная таким образом запись является
двоичной записью искомого числа R.
Результат переводится в десятичную систему и выводится на экран.
Укажите максимальное число R, которое может быть результатом
работы данного алгоритма, при условии, что N не больше 12.
В ответе запишите это число в десятичной системе счисления.
"""
for N in range(1, 13):
# N - исходное число
binary = bin(N)[2:] # двоичная запись числа N без префикса "0b"
if N % 2 == 0: # если число чётное
binary = "10" + binary # слева дописывается 10
else: # если число нечётное
binary = "1" + binary + "01" # слева дописывается 1 и справа дописывается 01
R = int(binary, 2) # переводим двоичную запись в десятичную
print(R) # выводим результат
"""
Ответ: 109
""""""
На вход алгоритма подаётся натуральное число N.
Алгоритм строит по нему новое число R следующим образом.
Строится двоичная запись числа N.
Далее эта запись обрабатывается по следующему правилу:
а) если число чётное, то к двоичной записи числа
слева дописывается 10;
б) если число нечётное, то к двоичной записи числа
слева дописывается 1 и справа дописывается 01.
Полученная таким образом запись является
двоичной записью искомого числа R.
Результат переводится в десятичную систему и выводится на экран.
Укажите максимальное число R, которое может быть результатом
работы данного алгоритма, при условии, что N не больше 12.
В ответе запишите это число в десятичной системе счисления.
"""
for N in range(1, 13):
# N - исходное число
binary = bin(N)[2:] # двоичная запись числа N без префикса "0b"
if N % 2 == 0: # если число чётное
binary = "10" + binary # слева дописывается 10
else: # если число нечётное
binary = "1" + binary + "01" # слева дописывается 1 и справа дописывается 01
R = int(binary, 2) # переводим двоичную запись в десятичную
print(R) # выводим результат
"""
Ответ: 109
"""