
Задача по теме: "Двоичные и десятичные алгоритмы"
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом
1. Строится четверичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
a) если число N делится на 4, то к этой записи дописываются две последние четвертичные цифры;
б) если число N на 4 не делится, то остаток от деления умножается на 2, переводится в четверичную запись дописывается в конец числа.
Полученная таким образом запись является четверичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 11 = 234 результатом является число 23124 = 182, а для исходного числа 12 = 304 это число 30304, = 204.
Укажите максимальное число N, после обработки которого с помощью этого алгоритма получается число R, меньшее 261.


Решение:
Напишем программу на языке программирования Python:
def f4(n):
s = ''
while n > 0:
s = str(n %4 ) + s
n = n // 4
return s
for n in range(1,260):
n4 = f4(n)
if n % 4 == 0:
n4 = n4 + n4[-2:]
else:
ost = f4( (n%4) * 2 )
n4 = n4 + ost
r = int(n4,4)
if r < 261:
print(n)
Этот код выполняет следующие действия:
- В цикле for перебираются значения n от 1 до 259.
- Для каждого значения n вызывается функция f4(n), чтобы получить его представление в четверичной системе счисления.
- Если n делится на 4 без остатка, то к строке n4 добавляются последние два символа этой строки.
- Если n не делится на 4 без остатка, то вычисляется остаток от деления (n % 4) * 2 и вызывается функция f4() для этого остатка. Результат добавляется к строке n4.
- Затем строка n4 преобразуется обратно в десятичное число с помощью функции int(n4, 4).
- Если полученное число r меньше 261, то оно выводится на экран.
Таким образом, код выводит все значения n, для которых преобразованное в четверичную систему счисления число меньше 261.
Ответ: 61
Сообщение об ошибке
Расскажите, в каком месте допущена ошибка, мы как можно быстрее её исправим. Спасибо за обратную связь!

МГ | Pro | ProMax | |
Практика на платформе | |||
Отслеживание прогресса обучения | |||
Двухуровневое домашнее задание после каждого вебинара | |||
Все материалы составлены экспертом ЕГЭ | |||
Персональный менеджер | |||
Личный куратор | |||
Разбор ошибок личным куратором | |||
Еженедельные созвоны с куратором для закрытия индивидуальных пробелов | |||
Составление индивидуального расписания |

счёта
средств
подтверждено!
Теперь вы можете приступить
к следующему уроку
курса по математике
замены
Для смены номера телефона
мы отправили Вам код по СМС,
введите его в поле ниже.
Электронная почта
На почту придет чек об оплатеНажимая кнопку "купить", Вы выражаете своё согласие с офертой оказания услуг и принимаете их условия
Здравствуйте!
Выберите информацию о себе ниже

Оплата прошла успешно!
