Задача к ЕГЭ по информатике на тему «арифметические выражения» №4

Сколько пятерок содержится в шестеричной записи числа 6120 + 2163 − 55  ?

Решение Python:

a = 6**120 + 216**3 - 55
s = ’’
while a > 0:
    s = str(a % 6) + s
    a //= 6
print(s.count(’5’))

Решение руками:

Для начала стоить отметить, что любое десятичное число A в n  -ой степени можно записать как единицу и n  нулей в системе счисления с основанием A:          ◜--◞n◟--◝ An10  = 100...000A

Так как нас просят узнать количество пятерок в шестеричной системе, представим все числа как степени шестерки и переведем 160 в шестеричную, так как это число не является степенью двойки, получим:   120      3          120     33        2      1       0     120    9 6    + 216  − 321 = 6   +  (6 )  − (1 ⋅ 6 + 3 ⋅ 6 + 1 ⋅ 6 ) = 6 + 6  − 131  .

Для начала выполним сложение:

   10..0..0000000000  +       1000000000 ---1-0...01000000000----      ◟◝◜◞       109

Вычтем из полученного 131:

          ⋅5555 55556  −  10..01000000000 ----------------131---     10...0 555555425      ◟◝◜◞       110

Примечание: при вычитании в недесятичной системе счисления, мы занимаем не “десяток”, а само основание системы счисления. В данном примере из второй единицы (она стоит в 6 разряде) мы занимаем шесть в соседний разряд, и затем из полученной “шестерки” занимаем в следующий разряд, таким образом продолжая до разряда, под которым стоит последняя цифра другого числа, отличная от нуля.

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