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

Числа M и N за­пи­са­ны в си­сте­ме счис­ле­ния с ос­но­ва­ни­ем 12 со­от­вет­ствен­но.

M  =  49x2612, N  =  49x7012.

В за­пи­си чисел пе­ре­мен­ной 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 '0123456789AB':

M = int('49' + x + '26', 12)

N = int('49' + x + '70', 12)

if (M + A) % N == 0:

print(A)

exit

 

Ответ: 54.

 

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

a = 1

while True:

if any([(int(f'49{x}26',12)+a)%int(f'49{x}70',12)==0 for x in '0123456789AB']):

print(a)

break

a += 1

 

При­ведём ре­ше­ние Сер­гея Донец на 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

N  =  49x70

M  =  49x26

A = 70 - 26 = 46 (cc12)

вы­чи­та­ем в cc12, не в де­ся­тич­ной. или надо пе­ре­ве­сти в сс10.

вы­чтем числа в про­грам­ме и про­ве­рим ответ в стол­бик:

uses School;

begin

var n:=Dec($'70', 12);

var m:=Dec($'26', 12);

var d:=Dec($'46', 12);

Println(d);

Println(n-m);

end.


Аналоги к заданию № 48379: 48380 48381 Все