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

В си­сте­ме счис­ле­ния с ос­но­ва­ни­ем p вы­пол­ня­ет­ся ра­вен­ство 12 · 34  =   xy2. Бук­ва­ми x и y обо­зна­че­ны не­ко­то­рые цифры из ал­фа­ви­та си­сте­мы счис­ле­ния с ос­но­ва­ни­ем p. Опре­де­ли­те зна­че­ние числа yxp и за­пи­ши­те это зна­че­ние в де­ся­тич­ной си­сте­ме счис­ле­ния.

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

Ре­ше­ние.

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

for p in range(5, 100):

for x in range(p):

for y in range(p):

s = (1 * (p**1) + 2 * (p ** 0)) * (3 * (p**1) + 4 * (p**0) )

r = x * (p**2) + y * (p**1) + 2

if s == r:

print(y * (p**1) + x * (p**0), p)

 

Ответ: 34.

 

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

alphabet = sorted('0123456789QWERTYUIOPASDFGHJKLZXCVBNM')

for p in range(5, 36):

for x in alphabet[:p]:

for y in alphabet[:p]:

if int(f'12', p) * int(f'34', p) == int(f'{x}{y}{2}', p):

print(int(f'{y}{x}', p))

 

При­ведём ре­ше­ние Сер­гея Донец на PascalABC.NET:

uses School;

begin

var ass:=(('0'..'9')+('A'..'Z')).toArray;

for var p:=5 to 36 do begin

var a:=dec($'12',p);

var b:=dec($'34',p);

var f:=a*b;

var abc:=ass[:p];

foreach var x in abc do

foreach var y in abc do begin

var r:=dec($'{x}{y}2',p);

if f = r then Println(dec($'{y}{x}',p));//Ответ: 34.

end;

end;

end.