Тема 14. Системы счисления

14.01 Арифметические выражения

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела системы счисления
Решаем задачу:

Ошибка.
Попробуйте повторить позже

Задача 1#30424

Сколько значащих нулей содержится в двоичной записи значения выражения: 82020 + 42017 + 26 − 1  ?

Показать ответ и решение

Решение программой

Для подсчёта количества нулей в двоичной записи числа реализуется функция x_10_to_n(x, n), которая переводит число x из десятичной системы в систему счисления с основанием n. В функции на каждом шаге берётся остаток от деления на n (последняя цифра в новой системе) и добавляется в список digits, после чего число уменьшается целочисленным делением на n. После завершения цикла список переворачивается, чтобы цифры шли в правильном порядке.

Вызов x_10_to_n(s, 2) формирует список цифр двоичной записи числа s. С помощью метода count(0) подсчитывается количество нулей в этом списке, и результат выводится на экран.

# Функция для перевода числа x из десятичной системы в систему счисления с основанием n
def x_10_to_n(x, n):
    digits = []  # список для хранения цифр числа в новой системе
    while x > 0:
        # Добавляем остаток от деления на n (цифру в системе счисления с основанием n)
        digits.append(x % n)
        # Отбрасываем последнюю цифру (целочисленное деление на n)
        x //= n
    # Разворачиваем список, чтобы цифры шли от старшей к младшей
    digits.reverse()
    return digits

# Исходное выражение
s = 8**2020 + 4**2017 + 26 - 1

# Перевод числа s в двоичную систему и подсчёт количества нулей
print(x_10_to_n(s, 2).count(0))

Ответ: 6056

Специальные программы

Все специальные программы

Программа
лояльности v2.0

Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!

Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение

Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты

Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей

Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ

Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!

cyberpunkMouse
cyberpunkMouse
Рулетка
Вы можете получить скидку в рулетке!