Ханойские башни. есть 3 стержня. на одном из них лежат n колец, причем внизу большие, кверху кольца уменьшаются(получается такая пирамида). Задача в том, чтобы перенести все кольца с одного стержня на другой(естественно используя 3й стержень), причем не разрешается класть большее кольцо на меньшее(то есть можно только меньшее на большее). Программа должна с помощью рекурсии выводить последовательность действий(ходов. к примеру 1->3, 2->3,1->2…)- Pascal(Паскаль)

uses crt;
const n=3;
procedure Hanoy(a,b,c:char;count:integer);
begin
if count>0 then
   begin
     Hanoy(a,c,b,count-1);
     writeln('С башни '+a+ ' на башню '+c);
     Hanoy(b,a,c,count-1);
   end;
end;
begin
clrscr;
Hanoy('1','2','3',n);
readln;
end.

Leave a Comment

3 + 7 =