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

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

Задача 1#72466

При каком наименьшем натуральном значении переменной x троичная запись выражения

 1027   x
9   − 3  + 79

содержит ровно 1600 нулей?

Показать ответ и решение
for i in range(1,5000):
    c = 0
    x = 9**1027 - 3**i + 79
    while x > 0:
        if x % 3 == 0:
            c += 1
        x //= 3
    if c == 1600:
        print(i)

Ответ: 1604

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

Задача 2#72455

Значение арифметического выражения: 6180 +660 − 356 + 615  – записали в системе счисления с основанием 6. Какая цифра, которая больше 0, чаще всего встречается в этой записи?

Показать ответ и решение
x = 6**180 + 6**60 - 356 + 6**15
s = []
while x > 0:
    s.append(x % 6)
    x //= 6
print(sorted(set(s)))
print([s.count(i) for i in sorted(set(s))])

Ответ: 5

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

Задача 3#72417

Значение арифметического выражения: 5100 +550 − 798  – записали в системе счисления с основанием 5. Чему равна сумма цифр этой записи? Ответ запишите в виде десятичного числа.

Показать ответ и решение
x =  5**100 + 5**50 - 798
s = ’’
while x > 0:
    s = str(x % 5) + s
    x //= 5
print(sum(map(int,s)))

Ответ: 192

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

Задача 4#72408

Дано арифметическое выражение 23xyB15 + 36y90x  . Определите, сколько различных значений может принимать выражение при всех возможных x и y.

(Примечание: основание системы счисления x  понимается как переведенное в десятичную систему счисления число)

Показать ответ и решение
alf = ’0123456789ABCDEF’
c = set()
for x in range(10, 15):
    for y in range(x):
        s1 = int(f’23{alf[x]}{alf[y]}B’, 15)
        s2 = int(f’36{alf[y]}90’, x)
        c.add(s1 + s2)
print(len(c))

Ответ: 60

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

Задача 5#72402

Значение арифметического выражения: 980 + 350 − 310  – записали в системе счисления с основанием 3. Сколько цифр «2» содержится в этой записи?

Показать ответ и решение
x = 9**80 + 3**50 - 3**10
c = 0
while x > 0:
    if x % 3 == 2:
        c += 1
    x //= 3
print(c)

Ответ: 40

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

Задача 6#64062

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

3x3x869217 + 18x35x5717

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

Показать ответ и решение
def f(a,k):
    a=a[::-1]
    return sum(a[i]*k**i for i in range(len(a)))
for x in range(17):
    s=f([3,x,3,x,8,6,9,2],17)+f([1,8,x,3,5,x,5,7],17)
    if s%12==0:
        print(x,s//12)

Ответ: 187440917

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

Задача 7#63866

Значение арифметического выражения:

 1222   320   16
8    + 4  − 2  + 76

записали в системе счисления с основанием 2. Сколько цифр «1» содержится в этой записи?

Показать ответ и решение
x = 8**1222 + 4**320 - 2**16 + 76
s = ’’
while x > 0:
    s = str(x % 2) + s
    x //= 2
print(s.count(’1’))

Ответ: 628

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

Задача 8#63833

Значение арифметического выражения:

 350   340   320
4   + 8   − 2  − 12

записали в системе счисления с основанием 2. Сколько значащих цифр «0» содержится в этой записи?

Показать ответ и решение
x = 4**350 + 8**340 - 2**320 - 12
s = ’’
while x > 0:
    s = str(x % 2) + s
    x //= 2
print(s.count(’0’))

Ответ: 324

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

Задача 9#63646

Значение арифметического выражения:

 2023   115     523
4   + 4   − 3⋅4   − 2378

записали в системе счисления с основанием 4. Сколько цифр 3 содержится в этой записи?

Показать ответ и решение
x = 4**2023 + 4**115 - 3 * 4**523 - 2378
s = ’’
while x > 0:
    s = str(x % 4) + s
    x //= 4
print(s.count(’3’))

Ответ: 1609

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

Задача 10#63645

Значение арифметического выражения:

   21      17      15      5
125  − 4 ⋅25  − 2 ⋅5  − 3⋅5

записали в системе счисления с основанием 5. Сколько цифр 0 содержится в этой записи?

Показать ответ и решение
x = 125**21 - 4 * 25**17 - 2 * 5**15 - 3 * 5**5
s = ’’
while x > 0:
    s = str(x % 5) + s
    x //= 5
print(s.count(’0’))

Ответ: 6

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

Задача 11#63644

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

 2020   1019
5   − 5    + 100

в системе с основанием 5. Сколько цифр 4 содержится в этой записи?

Показать ответ и решение
x = 5 ** 2020 - 5 ** 1019 + 100
s = ’’
while x > 0:
    s = str(x % 5) + s
    x //= 5
print(s.count(’4’))

Ответ: 1002

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

Задача 12#63530

Значение арифметического выражения:

 20    60
9  + 3  − 15

записали в системе счисления с основанием 3. Сколько цифр «2» содержится в этой записи?

Показать ответ и решение
x = 9 ** 20 + 3 ** 60 - 15
s = ’’
while x > 0:
    s = str(x % 3) + s
    x //= 3
print(s.count(’2’))

Ответ: 37

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

Задача 13#62653

Сколько пятерок содержится в записи числа, данного ниже, в системе счисления с основанием 6  ?

216900 − 36350 + 6100 − 1598
Показать ответ и решение
x = 216 ** 900 - 36 ** 350 + 6 ** 100 - 1598
s = ’’
while x > 0:
    s = str(x % 6) + s
    x //= 6
print(s.count(’5’))



Ответ: 2095

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

Задача 14#62652

Значение арифметического выражения:

    123   98
2 ⋅64   − 8  + 111

записали в системе счисления с основанием 8. Определите количество нулей в получившейся записи.

Показать ответ и решение
x = 2 * 64 ** 123 - 8 ** 98 + 111
s = ’’
while x > 0:
    s = str(x % 8) + s
    x //= 8
print(s.count(’0’))



Ответ: 95

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

Задача 15#62651

Определите количество двоек в троичной записи результата данного выражения.

 100   200   50
81   − 3   − 3  + 2
Показать ответ и решение
x = 81 ** 100 - 3 ** 200 - 3 ** 50 + 2
s = ’’
while x > 0:
    s = str(x % 3) + s
    x //= 3
print(s.count(’2’))



Ответ: 350

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

Задача 16#62650

Определите количество единиц в двоичной записи результата данного выражения.

  231   120   50
16   + 4  − 2
Показать ответ и решение
x = 16 ** 231 + 4 ** 120 - 2 ** 50
s = ’’
while x > 0:
    s = str(x % 2) + s
    x //= 2
print(s.count(’1’))




Ответ: 191

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

Задача 17#61630

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

561x4121 + 1x290121

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

Показать ответ и решение
ans = 0
for x in range(121):
    s1 = 5*121**4 + 6*121**3 + 1*121**2 + x*121 + 4
    s2 = 1*121**4 + x*121**3 + 2*121**2 + 9*121
    if (s1 + s2) % 17 == 0:
        ans += (s1+s2) // 17
print(ans)

Ответ: 575570282

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

Задача 18#60034

При каком наименьшем натуральном значении переменной x двоичная запись выражения

    100      x
6∗ 4  + 3 ∗2 + 67

содержит ровно 256 нулей?

Показать ответ и решение
for x in range(1, 1000):
    a = 6*4**100 + 3*2**x + 67
    b = bin(a)[2:]
    if b.count(’0’) == 256:
        print(x)
        break

Ответ: 261

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

Задача 19#60033

Значение выражения

      9       5
2 ∗343 + 5∗ 49 − 37

записали в системе счисления с основанием 7 без незначащих нулей. Определите сумму цифр полученного числа.

Показать ответ и решение
s = 2*343**9 + 5*49**5 - 37
s1 = ’’
while s > 0:
    s1 = str(s % 7) + s1
    s = s // 7

sm = sum([int(i) for i in s1])
print(sm)

Ответ: 60

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

Задача 20#60032

Значение арифметического выражения

13340 + 13 ∗7104 + 67− x

записали в системе счисления с основанием 13. Определите при каком наименьшем натуральном значении x разница между количеством цифр 3 и цифр 9 будет равна 5.

Показать ответ и решение
def trd(num):
    dg = ’0123456789abc’
    n = num
    t = ’’
    while n > 0:
        t = str(dg[n%13]) + t
        n = n//13
    return t

for x in range(1, 500):
    s = 13**340 + 13*7**104 + 67 - x
    s1 = trd(s)
    if abs(s1.count(’3’)-s1.count(’9’)) == 5:
        print(x)
        break

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