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

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

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

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

Задача 1#61630

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

561x4121 + 1x290121

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

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

В задаче даны два числа в 121  -ричной системе счисления: 561x4121  и 1x290121  . В записи этих чисел встречается переменная x, которая может принимать любое целое значение от 0 до 120, так как цифры в 121  -ричной системе счисления могут быть в этом диапазоне. Требуется найти такие значения x, при которых сумма этих двух чисел, переведённых в десятичную систему, будет кратна 17. Для каждого найденного значения x нужно вычислить частное от деления суммы на 17, а затем найти сумму всех этих частных.

Алгоритм начинается с создания переменной ans = 0, которая будет накапливать итоговую сумму частных. Далее перебираем все возможные значения x с помощью цикла for x in range(121). На каждой итерации сначала переводим первое число 561x4121  в десятичную систему, используя разложение по степеням 121  :           4        3         2
s1 = 5× 121 + 6 × 121  + 1× 121 + x× 121 + 4  . Аналогично переводим второе число 1x290121  : s2 = 1× 1214 + x× 1213 +2 × 1212 + 9× 121+ 0  . После перевода в десятичную систему складываем их: s1 + s2. Проверяем, делится ли эта сумма на 17, используя условие (s1 + s2) % 17 == 0. Если условие выполняется, то добавляем к переменной ans целое частное от деления этой суммы на 17, полученное с помощью (s1 + s2) // 17. После окончания перебора всех значений x выводим содержимое ans — это и будет искомая сумма частных.

ans = 0
# Переменная для накопления суммы частных
# Перебираем все возможные значения x в $121$-ричной системе (от 0 до 120)
for x in range(121):
    # Переводим первое число $561x4_{121}$ в десятичную систему
    s1 = 5*121**4 + 6*121**3 + 1*121**2 + x*121 + 4
    # Переводим второе число $1x290_{121}$ в десятичную систему
    s2 = 1*121**4 + x*121**3 + 2*121**2 + 9*121
    # Проверяем, делится ли сумма этих чисел на 17
    if (s1 + s2) % 17 == 0:
        # Если делится, добавляем к ans частное от деления суммы на 17
        ans += (s1 + s2) // 17
# Выводим итоговую сумму частных
print(ans)


Ответ: 575570282

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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