Monday, June 24, 2013

Tower of Hanoi Code

uses crt;
var n, langkah: integer;
asal, bantuan, tujuan: char;

procedure hanoi (jumlah:integer; asal, tujuan, bantuan: char; var langkah :integer);
begin
if jumlah=1 then
begin
langkah:=langkah+1;
writeln(' pindahkan dari ',asal,' ke ',tujuan);
end
else
begin
hanoi(jumlah-1, asal, bantuan, tujuan, langkah);
hanoi(1, asal, tujuan, bantuan, langkah);
hanoi(jumlah-1, bantuan, tujuan, asal, langkah);
end;
end;

begin
readln(n);
langkah:=0;
hanoi(n,'A','C','B',langkah);
writeln ('Diperlukan ',langkah,' langkah');
readln;
end.

0 comments:

Post a Comment