PROGRAM zum_Schatz;   { Erklärung der Rekursion }         
   PROCEDURE wende;          { Programm strukturieren }
   BEGIN
     drehe_links;
     drehe_links;
   END;
   PROCEDURE drehe_rechts;
   BEGIN
     drehe_links;
     wende;
   END;
    PROCEDURE gehe_um_die_Wand;
    BEGIN
         vor;
         IF NOT links_frei THEN gehe_um_die_Wand
         ELSE
         BEGIN
               drehe_links;
               vor;
               drehe_links;
         END;
         vor;
    END;
BEGIN                                                                            
   WHILE vorne_frei DO vor;
     drehe_rechts;
    gehe_um_die_Wand;
    drehe_links;
     WHILE NOT Platz_belegt DO vor;
     WHILE Platz_belegt DO nimm_auf;
END.