стереть
Класс
8 9 10 11
Нужно авторизоваться
Нужно авторизоваться
Нужно авторизоваться
Нет аккаунта?
При наличии аккаунта на платформе можно
Введите больше 6 символов
Проблемы со входом?
Введи последние 4 цифры номера, с которого
поступит звонок. Трубку брать не нужно.
Повторный звонок через
сек.
Добро пожаловать!
Зарегистрируйся и получи Демо мастер-группы на 10 дней по любимым предметам бесплатно.
Добро пожаловать!
Как тебя зовут?
Введите не меньше 2 символов
Привяжем номер телефона
Введите не меньше 2 символов
Привяжем номер телефона
Повторный звонок через
30 сек.
Теперь нужно подтвердить номер - введи последние 4 цифры номера, с которого поступит звонок. Трубку брать не нужно
Введите не меньше 2 символов
Придумаем пароль
Почти закончили! Теперь нужно создать надежный пароль
Введите не меньше 2 символов
Немного о тебе
В какой класс ты переходишь?
Укажи, какие предметы будешь или хочешь сдавать
Введите не меньше 2 символов
На почту 12345@mail.ru отправлена ссылка для сброса пароля.
OK
Информатика

Задача по теме: "Двоичные и десятичные алгоритмы"

Информатика
Задание 5 Двоичные и десятичные алгоритмы
Подсказка
За подсказку ты получишь лишь половину баллов
Использовать
Автор
Крылов С.С., Чуркина Т.Е. Информатика: единый государственный экзамен. — Москва: Издательство "Национальное образование", 2024. — 256 с. Материалы публикуются в учебных целях
Просмотры
13579
banner-img

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом

1. Строится четверичная запись числа N.

2. Далее эта запись обрабатывается по следующему правилу:

    a) если число N делится на 4, то к этой записи дописываются две последние четвертичные цифры;

    б) если число N на 4 не делится, то остаток от деления умножается на 2, переводится в четверичную запись дописывается в конец числа.

Полученная таким образом запись является четверичной записью искомого числа R.

3. Результат переводится в десятичную систему и выводится на экран.

Например, для исходного числа 11 = 234 результатом является число 23124 = 182, а для исходного числа 12 = 304 это число 30304, = 204.

Укажите максимальное число N, после обработки которого с помощью этого алгоритма получается число R, меньшее 261.

loading
Решение
single-task__solution-banner

Решение:

Напишем программу на языке программирования 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

На экзамене это задание принесло бы тебе 2/2 баллов.
Решать еще

Сообщение об ошибке

Расскажите, в каком месте допущена ошибка, мы как можно быстрее её исправим. Спасибо за обратную связь!

Здравствуйте!

Выберите информацию о себе ниже

pay-success-img

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

pay-un-success-img

Оплата не прошла

Попробуйте снова