Исполнитель чертёжник перемещается на координатной плоскости, оставляя след в виде линии. чертёжник может выполнять команду сместиться на (a, b) (где a, b – целые числа), перемещающую чертёжника из точки с координатами (x, y), в точку с координатами (x+a, y+b). если числа a, b положительные, значение соответствующей координаты увеличивается, если отрицательные — уменьшается. например, если чертёжник находится в точке с координатами (1, 1), то команда сместиться на (–2, 4) переместит его в точку (–1, 5). запись повтори k раз команда1 команда2 команда3 конец означает, что последовательность команд команда1 команда2 команда3 повторится k раз. чертёжнику был дан для исполнения следующий алгоритм: сместиться на (-2, 4) повтори 2 раз команда1 сместиться на (–1, 3) сместиться на (2, 3) конец какую команду надо выполнить чертёжнику вместо команды команда1, чтобы вернуться в исходную точку, из которой он начал движение?
2. Немного изменим ваш код и получим искомое значение x
Искомое число х = 16293
var
x, y, a, b, k: integer;
begin
k:=10000;
repeat
x:=k;
a := 0; b := 0; y := 1;
while x > 0 do
begin
if (x mod 10) mod 2 = 0
then
a := a * 10 + x mod 10
else begin
y := y * 10;
b := b * 10 + x mod 10
end;
x := x div 10
end;
a := a * y + b;
k := k + 1;
until a = 26391;
writeln(a:8, k-1:8);
end.
55:5=11
365:11≈33(34) берём "34", чтобы перехлестнуть 365.
Так как 11-ый член является замыкающим (перехлёстывающим 365), тогда смотрим по ближайшим:
34*10=340 (340+34=374) - подходит, но это не максимум!
365 mod 10= 36, а это значит, что последующий член будет больше 365, а именно 395.
В задании сказано, что d должно быть максимальным, а "34" - это допустимое, но не максимально число, удовлетворяющее условию, даже минимальное (по результату).
Проверка:
34*11=374, значит, когда на экране выведется s:=340, n:=50, то, зайдя по следующему циклу, получится, что s:= 374, n:=55. На следующий цикл программа не пойдёт.
ответ: d=34.