rendered paste body procedure Wegsuche (zl, sp: Integer);
// Der eigentliche "Motor" des Programms
// Beachte den rekursiven Aufruf mit verschiedenen Parametern!
begin
if IsStein (zl,sp,leer) OR IsStein (zl,sp,tor) then
begin
if IsStein (zl,sp,tor) then Ausgang
else
if IsStein (zl,sp,leer) then
begin
SetStein (zl,sp,marke);
Pause (Pausenzeit);
(* ================================================ *)
{} Wegsuche (zl,sp+1); {nach rechts} {}
{} Wegsuche (zl+1,sp); {nach unten } {}
{} Wegsuche (zl,sp-1); {nach links } {}
{} Wegsuche (zl-1,sp); {nach oben } {}
(* ================================================ *)
ResetStein (zl,sp);
Pause (Pausenzeit);
end{if IsStein(leer)};
end{if IsStein};
end{Wegsuche};