Сколько значащих нулей содержится в двоичной записи значения выражения:
Решение Python:
# 1 Способ
a = 16**5 + 8**5 - 4**2 + 2**9 - 535
c = 0
while a > 0:
if a % 2 == 0:
c += 1
a //= 2
print(c)
# 2 Способ
a = bin(16**5 + 8**5 - 4**2 + 2**9 - 535)[2:]
print(a.count(’0’))
Решение руками:
Вычтем столбиком:
100001000000000000000
- 100111
---------------------
100000111111111011001
Итого, 8 нулей.
Ответ: 8