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};