В системе счисления
Приведём решение на языке Python.
for p in range(9,30):
for x in range(1,p):
for y in range (0,p):
for z in range (1,p):
for w in range(1,p):
t1 = z*p**4+x*p**3+y*p**2+x*p**1+4
t2 = x*p**4+y*p**3+6*p**2+5*p**1+8
t3 = w*p**4+z*p**3+x*p**2+7*p**1+3
if t1 + t2 == t3:
print(x*p**3+y*p**2+z*p**1+w*p**0)
Ответ: 1114.
Приведём решение Ильи Андрианова на языке Python.
alphabet = sorted('1234567890QWERTYUIOPASDFGHJKLZXCVBNM')
for p in range(9, 36+1):
for x in alphabet[:p]:
for y in alphabet[:p]:
for z in alphabet[:p]:
for w in alphabet[:p]:
if int(z+x+y+x+'4', p) + int(f'{x}{y}658', p) == int(f'{w}{z}{x}73', p):
print(int(x+y+z+w, p))
Приведём решение Сергея Донец на PascalABC.NET:
Рассмотрим младший разряд.
Складываем последние цифры: 4+8=12
В результате в этом разряде должна стоять цифра 3.
В системе счисления с основанием p это означает:
12=k⋅p+3, где k — перенос в следующий разряд.
старшая цифра 8. система счисления p>=9.
значит 12=k*9+3. откуда k=1.
получаем k=1 p=9 - единственно возможный вариант.
uses School;
begin
var ass:=(('0'..'9')+('A'..'Z')).toArray;
for var p:=9 to 9 do
foreach var w in ass[1:p] do
foreach var x in ass[1:p] do
foreach var y in ass[:p] do
foreach var z in ass[1:p] do
begin
var o:=Dec($'{z}{x}{y}{x}4', p);
var d:=Dec($'{x}{y}658', p);
var r:=Dec($'{w}{z}{x}73', p);
if o+d=r
then begin
Println(Dec($'{x}{y}{z}{w}', p));
end;
end;
end.

