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

Зна­че­ние вы­ра­же­ния 436 + 3 · 420 + 415 + 2 · 47 + 49 за­пи­са­ли в си­сте­ме счис­ле­ния с ос­но­ва­ни­ем 16. Сколь­ко раз­ных цифр встре­ча­ет­ся в этой за­пи­си?

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

Ре­ше­ние.

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

4 в сте­пе­ни левая круг­лая скоб­ка 36 пра­вая круг­лая скоб­ка плюс 3 умно­жить на 4 в сте­пе­ни левая круг­лая скоб­ка 20 пра­вая круг­лая скоб­ка плюс 4 в сте­пе­ни левая круг­лая скоб­ка 15 пра­вая круг­лая скоб­ка плюс 2 умно­жить на 4 в сте­пе­ни 7 плюс 49=16 в сте­пе­ни левая круг­лая скоб­ка 18 пра­вая круг­лая скоб­ка плюс 3 умно­жить на 16 в сте­пе­ни левая круг­лая скоб­ка 10 пра­вая круг­лая скоб­ка плюс 4 умно­жить на 16 в сте­пе­ни 7 плюс 8 умно­жить на 16 в кубе плюс 3 умно­жить на 16 плюс 16 в сте­пе­ни 0 .

Это число в си­сте­ме счис­ле­ния с ос­но­ва­ни­ем 16 будет вы­гля­деть как еди­ни­ца, семь нулей, трой­ка, два нуля, четвёрка, три нуля, восьмёрка, ноль, трой­ка и еди­ни­ца. Таким об­ра­зом, всего пять раз­лич­ных цифр встре­ча­ет­ся в за­пи­си ис­ход­но­го вы­ра­же­ния в шест­на­дца­те­рич­ной си­сте­ме счис­ле­ния.

 

Ответ: 5.

 

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

x = 4 ** 36 + 3 * 4 ** 20 + 4 ** 15 + 2 * 4 ** 7 + 49

s = ""

while x != 0:

s += str(x % 16)

x //= 16

s = s[::-1]

a = set() # со­зда­ем мно­же­ство

for i in s:

a.add(i) # эле­мен­ты во мно­же­стве не по­вто­ря­ют­ся, таким об­ра­зом на­хо­дим кол­ли­че­ство раз­лич­ных цифр

print(len(a))

 

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

print(len(set(hex(4**36+3*4**20+4**15+2*4**7+49)[2:])))


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

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