Сколько единиц содержится в двоичной записи значения выражения: ?
Решение руками:
Представим все числа в виде:
Получим:
Количество единиц:
Решение Python:
# Способ 1
a = 4**19 + 2**8 + 31
c = 0
while a > 0:
if a % 2 == 1:
c += 1
a //= 2
print(c)
# Способ 2
a = bin(4**19 + 2**8 + 31)[2:]
print(a.count(’1’))
Ответ: 7