Форум » Системы счисления » Задание 14 №121 Ответ не сходится » Ответить

Задание 14 №121 Ответ не сходится

Inna: № 121 Сколько значащих нулей в двоичной записи числа 8820 – 2760 + 14? Мое решение Представим число 14 следующим образом: 14 = 8 + 4 +2 = 23 + 22 + 21, тогда выражение будет иметь вид: 8820 – 2760 + 14 = 23280 – 2760 + 23 + 22 + 21 Здесь две пары 2N–2K, а остальные слагаемые дают по одной единице. Тогда общее число единиц равно (3280 – 760) + 1 + 1 + 1 = 2523 Общее количество разрядов в самом большом числе 23280 составляет 1+3280=3281 Тогда количество значащих нулей в двоичной записи выражения = 3281 – 2523 = 758 Ответ: 758 Решение на Python x = 8**820 – 2**760 + 14 print(bin(x).count('0') ) Ответ: 758 Не пойму где ошибаюсь, ответ указан 757!!!

Ответов - 3

Поляков: Inna пишет: print(bin(x).count('0') ) Правильно так: [pre2]>>> print(bin(x)[2:].count('0') )[/pre2]Иначе вы считаете первый ноль, который не относится к числу.

Поляков: Inna пишет: Общее количество разрядов в самом большом числе 23280 составляет 1+3280=3281 Это неверно. Там на самом деле 3280 знаков, потому что первое действие в цепочке - вычитание.

Inna: Большое спасибо1 Все получилось1




полная версия страницы