Задача о ханойской башне


Задача о ханойской башне - классическая задача алгоритмики. Суть ее в
том, что есть три столбца, на левом из которых расположена пирамидка
из дисков. Нужно переставить диски на правый столбец таким образом,
чтобы образовалась такая же пирамидка, при этом можно использовать
вспомогательный средний столбец, но нельзя класть диск большего
размера на меньший в процессе переноса.

{ Переместить с x на y }
procedure replace(k:integer;x,y,z:char);
 begin
  if k=1 then
    writeln(x,' => ', y)
  else
    begin
     replace(k-1,x,z,y);
     writeln(x, ' => ', y);
     replace(k-1, z,y,x);
    end;
 end;

var
  n:integer;
begin
  writeln('Введите число дисков в крайнем столбце');
  readln(n);
  writeln('Столбцы: a, b, c');
  replace(n,'a','c','b');
end.