iniciar-programa
define-nueva-instruccion gd  como
inicio
repetir 3 veces gira-izquierda;
fin;
define-nueva-instruccion mv como
inicio
repetir 2 veces gira-izquierda;
fin;
define-nueva-instruccion deja como
inicio
si frente-libre entonces
inicio
avanza;
avanza;
deja;
avanza;
fin
sino
inicio
mv;
fin;
fin;

    inicia-ejecucion
mientras no-orientado-al-oeste hacer gira-izquierda;
mientras frente-libre hacer avanza;
mv;
mientras derecha-bloqueada y frente-libre hacer avanza;
gd;



mientras frente-libre hacer
inicio
gd;
mientras frente-libre hacer avanza;
mv;
deja;
deja-zumbador;
mientras frente-libre hacer avanza;
mv;
mientras derecha-bloqueada y frente-libre hacer avanza;
gd;
avanza;
gd;
mientras frente-libre hacer avanza;
mv;
mientras derecha-bloqueada y frente-libre hacer avanza;
gd;
fin;
gira-izquierda;
mv;
deja;
deja-zumbador;
        apagate;
    termina-ejecucion
finalizar-programa
