Задания
Версия для печати и копирования в MS Word
Тип 14 № 28691
i

Сколь­ко еди­ниц со­дер­жит­ся в дво­ич­ной за­пи­си зна­че­ния вы­ра­же­ния 87 + 45 + 210 − 32?

Спрятать решение

Ре­ше­ние.

По­сле­до­ва­тель­но будем пре­об­ра­зо­вы­вать дан­ное вы­ра­же­ние:

8 в сте­пе­ни 7 плюс 4 в сте­пе­ни 5 плюс 2 в сте­пе­ни левая круг­лая скоб­ка 10 пра­вая круг­лая скоб­ка минус 32=2 в сте­пе­ни левая круг­лая скоб­ка 21 пра­вая круг­лая скоб­ка плюс 2 в сте­пе­ни левая круг­лая скоб­ка 10 пра­вая круг­лая скоб­ка плюс 2 в сте­пе­ни левая круг­лая скоб­ка 10 пра­вая круг­лая скоб­ка минус 2 в сте­пе­ни 5 .

Сумма 2 в сте­пе­ни левая круг­лая скоб­ка 21 пра­вая круг­лая скоб­ка плюс 2 в сте­пе­ни левая круг­лая скоб­ка 10 пра­вая круг­лая скоб­ка плюс 2 в сте­пе­ни левая круг­лая скоб­ка 10 пра­вая круг­лая скоб­ка в си­сте­ме счис­ле­ния с ос­но­ва­ни­ем 2 будет вы­гля­деть как еди­ни­ца, де­вять нулей, еди­ни­ца и один­на­дцать нулей. После вы­чи­та­ния из этой суммы 2 в сте­пе­ни левая круг­лая скоб­ка 5 пра­вая круг­лая скоб­ка по­лу­чит­ся еди­ни­ца, де­сять нулей, шесть еди­ниц и пять нулей.

Таким об­ра­зом, всего семь еди­ниц.

 

Ответ: 7.

 

При­ведём дру­гое ре­ше­ние на языке Python.

x = 8 ** 7 + 4 ** 5 + 2 ** 10 - 32

s = ''

while x != 0:

s += str(x % 2)

x //= 2

s = s[::-1]

print(s.count("1"))

 

 

При­ведём ре­ше­ние Ильи Ан­дри­а­но­ва на языке Python.

print(bin(8**7 + 4**5 + 2**10 - 32).count('1'))


Аналоги к заданию № 28691: 29123 Все

Раздел кодификатора ФИПИ: 1.4.1 По­зи­ци­он­ные си­сте­мы счис­ле­ния