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

14.02 Поиск цифр(-ы) числа

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

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

Задача 1#85907

Операнды арифметического выражения записаны в системах счисления с основаниями 12 и 78.

B76Ax5612 + W OW  1x92L78

В записи чисел переменной x обозначена неизвестная цифра. Определите значения x, при которых значение данного арифметического выражения кратно 15. Для найденных значений x вычислите сумму частных от деления значения арифметического выражения на 15 и укажите ее в ответе в десятичной системе счисления. Основание системы счисления указывать не нужно.

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

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

В задаче даны два числа, записанные в разных системах счисления: B76Ax5612  и W OW  1x92L78  , где x — неизвестная цифра. Нам требуется найти все значения x, при которых сумма этих чисел делится на 15, и затем вычислить сумму частных от деления этой суммы на 15. Для решения мы используем цикл for x in range(12):, так как x не может превышать наибольшей цифры из числа с наименьшим основанием (в данном случае 12). Внутри цикла мы вычисляем десятичное значение первого числа B76Ax5612  , раскладывая его по степеням 12: s1 = 11 * 12 ** 6 + 7 * 12 ** 5 + 6 * 12 ** 4 + 10 * 12 ** 3 + x * 12 ** 2 + 5 * 12 + 6, где цифры B и A переведены в 11 и 10 соответственно, а x подставляется на месте неизвестной цифры. Для второго числа W OW  1x92L78  аналогично раскладываем по степеням 78: s2 = 32 * 78 ** 7 + 24 * 78 ** 6 + 32 * 78 ** 5 + 78 ** 4 + x * 78 ** 3 + 9 * 78 ** 2 + 2 * 78 + 21, где цифры W, O и L переведены в десятичные значения 32, 24 и 21, а x подставляется на соответствующем месте. Далее суммируем числа s = s1 + s2 и проверяем делимость суммы на 15 через if s % 15 == 0. Если условие выполняется, добавляем частное от деления на 15 в множество a, чтобы избежать повторов. После перебора всех возможных x суммируем все элементы множества a с помощью sum(a), получая итоговый ответ.

# Создаем пустое множество для хранения частных от деления на 15
a = set()
# Перебираем все возможные значения x от 0 до 11
for x in range(12):
    # Вычисляем первое число $B76Ax56_{12}$ в десятичной системе
    s1 = 11 * 12 ** 6 + 7 * 12 ** 5 + 6 * 12 ** 4 + 10 * 12 ** 3 + x * 12 ** 2 + 5 * 12 + 6
    # Вычисляем второе число $WOW1x92L_{78}$ в десятичной системе
    s2 = 32 * 78 ** 7 + 24 * 78 ** 6 + 32 * 78 ** 5 + 78 ** 4 + x * 78 ** 3 + 9 * 78 ** 2 + 2 * 78 + 21
    # Находим сумму чисел
    s = s1 + s2
    # Проверяем, делится ли сумма на 15
    if s % 15 == 0:
        # Если делится, добавляем частное от деления на 15 во множество
        a.add(s // 15)
# Выводим сумму всех частных от деления на 15
print(sum(a))

Ответ: 113519091505347

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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