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

Сколько значащих нулей содержится в двоичной записи значения выражения: 165 +85 − 42 + 29 − 535?

Решение 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’))

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

165 + 85 − 42 +29 − 535 = 220 + 215 − 24 + 29 − 29 − 24 − 22 − 2 − 1 = 220 + 215 − 25 − 22 − 2 − 1

Вычтем столбиком:

    100001000000000000000
    -              100111
    ---------------------
    100000111111111011001

Итого, 8 нулей.

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