iniciar-programa
define-nueva-instruccion norte como
inicio
mientras no-orientado-al-norte hacer
inicio
gira-izquierda;
fin;
fin;

inicia-ejecucion
norte;



gira-izquierda;
mientras frente-libre hacer
avanza;
si frente-bloqueado entonces
gira-izquierda;
gira-izquierda;
gira-izquierda;

mientras frente-libre hacer
avanza;
si frente-bloqueado entonces
gira-izquierda;
gira-izquierda;
mientras frente-libre hacer
inicio
si algun-zumbador-en-la-mochila entonces
inicio
deja-zumbador;
fin;
avanza;
gira-izquierda;
avanza;
gira-izquierda;
gira-izquierda;
gira-izquierda;
fin;

si frente-bloqueado entonces
deja-zumbador;
gira-izquierda;
gira-izquierda;
gira-izquierda;
mientras frente-libre hacer
inicio
avanza;
fin;
gira-izquierda;
gira-izquierda;
gira-izquierda;

mientras no-junto-a-zumbador y derecha-libre hacer
inicio
deja-zumbador;
avanza;
gira-izquierda;
gira-izquierda;
gira-izquierda;
avanza;
gira-izquierda;
fin;

si junto-a-zumbador y frente-libre entonces
inicio
avanza;
gira-izquierda;
gira-izquierda;
gira-izquierda;
avanza;
gira-izquierda;
fin;

mientras no-junto-a-zumbador y derecha-libre hacer
inicio
deja-zumbador;
avanza;
gira-izquierda;
gira-izquierda;
gira-izquierda;
avanza;
gira-izquierda;
fin;

si derecha-bloqueada y no-junto-a-zumbador entonces
deja-zumbador;



apagate;
termina-ejecucion
finalizar-programa

