Тип 14 № 48379 

Кодирование чисел. Системы счисления. Операции в одной СС
i
Числа M и N записаны в системе счисления с основанием 9 соответственно.
M = 842x59, N = 8x7259.
В записи чисел переменной x обозначена неизвестная цифра из алфавита девятеричной системы счисления. Определите наименьшее значение натурального числа A, при котором существует такой x, что M + A кратно N.
Решение. При помощи цикла for будем перебирать числа A и x (в соответствии в заданной системой счисления). Затем переведём числа M и N в десятичную систему счисления. Проверим кратность суммы M и A на N и выведем наименьшее A на экран.
Приведём решение на языке Python.
for A in range(1, 1000):
for x in '012345678':
M = int('842' + x + '5', 9)
N = int('8' + x + '725', 9)
if (M + A) % N == 0:
print(A)
break
Ответ: 387.
Приведём решение Сергея Донец на PascalABC.NET:
Условие (M + A) mod N = 0 означает: M + A делится на N без остатка
То есть:
M + A = k * N (k — целое число ≥ 1)
A = k * N - M
Наименьшее натуральное A получается при k = 1:
A = N - M
вычитаем в столбик: по условию N > M
.....x....1....2....3....4
N = x725 1725 2725 3725 4725
M = 42x5 4215 4225 4235 4245
видим что х может быть только 4, иначе А<0.
A = 725 - 245
вычитаем в cc9, не в десятичной. или надо перевести в сс10.
вычтем числа в программе:
uses School;
begin
var n:=Dec($'725', 9);
var m:=Dec($'245', 9);
Println(n-m)
end.
Ответ: 387