Задача 14

Вариант 1. В двоичную.

Сколько единиц содержится в двоичной записи значения выражения: 42020 + 22017 – 15?


a = 4**2020 + 2**2017-15
b = str(bin(a))
print(b)
print(b.count('1'))

Ответ 2015

Примечание: если нужно посчитать количество нулей то помним что в двоичной записи числа в питоне в начале стоит 0b. По этому посчитав нули вычитаем один лишний 0.

Вариант 2. В не двоичную

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


x = 9**8 + 3**5 - 9
s = ''
while x != 0: 
    s = s + str(x % 3)
    x = x//3
s = s[::-1]
print(s.count("2"))

Ответ 3