iniciar-programa


define-nueva-instruccion orienta como inicio

si orientado-al-este entonces inicio
gira-izquierda;
gira-izquierda;
gira-izquierda;
fin;

si orientado-al-oeste entonces inicio
gira-izquierda;
fin;

si orientado-al-norte entonces inicio
gira-izquierda;
gira-izquierda;
fin;

fin;






    inicia-ejecucion

orienta;
repetir 1000 veces inicio

si junto-a-zumbador entonces inicio
apagate;
fin;

si orientado-al-sur y frente-bloqueado entonces inicio
gira-izquierda;
gira-izquierda;
mientras frente-libre hacer inicio
avanza;
fin;
orienta;
fin;

mientras frente-libre y izquierda-bloqueada hacer inicio
si junto-a-zumbador entonces inicio
apagate;
fin;
avanza;
fin;
si izquierda-libre   entonces inicio
gira-izquierda;
avanza;
si junto-a-zumbador entonces inicio
apagate;
fin;


gira-izquierda;
mientras frente-libre hacer inicio
si junto-a-zumbador entonces inicio
apagate;
fin;
avanza;
si junto-a-zumbador entonces inicio
apagate;
fin;
fin;
si frente-bloqueado entonces inicio
orienta;
si junto-a-zumbador entonces inicio
apagate;
fin;
avanza;
fin;
fin;




                         fin;
        apagate;
    termina-ejecucion
finalizar-programa
