Задача к ЕГЭ по информатике на тему «Поиск цифр(-ы) числа» №1

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

1213x67 + 51x4317

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

1 Способ:

alf = ’0123456’
for x in alf:
    s1 = int(’1213’ + x + ’6’, 7)
    s2 = int(’51’ + x + ’431’, 7)
    s = s1 + s2
    if s % 91 == 0:
        print(s // 91)

2 Способ:

# в массив записываем цифры чисел, -1 обозначает x
s1 = [1, 2, 1, 3, -1, 6]
s2 = [5, 1, -1, 4, 3, 1]
# система счисления
ss = 7
# число, которому выражение должно быть кратно
k = 91

for x in range(ss):
    # присваиваем соответствующим элементам массива значения
    s1[4], s2[2] = x, x
    sm1, sm2 = 0, 0
    # переводим в 10-ю систему счисления
    for j in range(len(s1)):
        sm1 += s1[len(s1) - j - 1] * ss ** j
    for j in range(len(s2)):
        sm2 += s2[len(s2) - j - 1] * ss ** j
    # проверяем кратность
    if (sm1 + sm2) % k == 0:
        print((sm1 + sm2) // k)

Ответ: 1199
Оцените статью
Я решу все!