14.02 Поиск цифр(-ы) числа
Ошибка.
Попробуйте повторить позже
Операнды арифметического выражения записаны в системах счисления с основаниями 12 и 78.
В записи чисел переменной x обозначена неизвестная цифра. Определите значения x, при которых значение данного арифметического выражения кратно 15. Для найденных значений x вычислите сумму частных от деления значения арифметического выражения на 15 и укажите ее в ответе в десятичной системе счисления. Основание системы счисления указывать не нужно.
Решение программой:
В задаче даны два числа, записанные в разных системах счисления: и
, где x —
неизвестная цифра. Нам требуется найти все значения x, при которых сумма этих чисел делится на 15, и
затем вычислить сумму частных от деления этой суммы на 15. Для решения мы используем цикл for x
in range(12):, так как x не может превышать наибольшей цифры из числа с наименьшим основанием
(в данном случае 12). Внутри цикла мы вычисляем десятичное значение первого числа
,
раскладывая его по степеням 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 подставляется на месте
неизвестной цифры. Для второго числа
аналогично раскладываем по степеням 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))
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

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

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

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

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

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!