Найти в Дзене

Разбор номера 7346 ЕГЭ по информатике #14

Оглавление

Условие: № 7346 (Уровень: Средний)

(Д. Статный) Дано арифметическое выражение:

-2

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

-3
def my_int(M: list, n: int):
r = 0
M.reverse()
for i in range(0, len(M)):
r += M[i] * n ** i
return r

for x in range(0, 67):
A = my_int([3, x, 2, 1], 81)
B = my_int([1, 7, x, 4], 67)
if (A + B) % 35 == 0:
print((A + B) // 35)

Комментарии к коду программы:

  1. def my_int(M: list, n: int): - Объявляем функцию my_int, которая принимает два аргумента: число для перевода в виде списока M и систему счисления из которой будем переводить в виде переменной n.
  2. r = 0 - Создаем переменную r со значением 0, куда будем записывать итоговый результат перевода.
  3. M.reverse() - Используем метод reverse() для переворачивания списка M, таким образом порядковые номера выстроятся по направлению индексов цикла for.
  4. for i in range(0, len(M)): - Используем цикл for, чтобы перебрать все элементы списка M по индексам.
  5. r += M[i] * n ** i - Для каждого элемента списка M вычисляем значение по формуле и добавляем его к переменной r (итоговую сумму).
  6. return r - Возвращаем значение переменной r, то есть результат перевода.
  7. for x in range(0, 67): - Используем цикл for, чтобы перебрать все значения от 0 до 66 для переменной x (всегда выбираем нижнюю систему счисления, так как большие числа не могут находиться в меньшей системе счисления).
  8. A = my_int([3, x, 2, 1], 81) - Вызываем функцию my_int с аргументами [3, x, 2, 1] и 81 и сохраняем результат в переменной A.
  9. B = my_int([1, 7, x, 4], 67) - Вызываем функцию my_int с аргументами [1, 7, x, 4] и 67 и сохраняем результат в переменной B.
  10. if (A + B) % 35 == 0: - Проверяем, является ли значение арифметического выражения A + B кратным 35.
  11. print((A + B) // 35) - Если сумма A + B кратна 35, выводим ее целочисленное - частное от деления на 35.

Ответ: 62244

Информатика ЕГЭ | itpy 👨‍💻

Присоединяйтесь и готовьтесь вместе с нами: https://t.me/+SIliQTddHE8xNTk6
Присоединяйтесь и готовьтесь вместе с нами: https://t.me/+SIliQTddHE8xNTk6