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

define-nueva-instruccion vuelta como inicio
repetir 2 veces gira-izquierda;
fin;


define-nueva-instruccion regresa como inicio
sur;
mientras frente-libre hacer avanza;
gira-izquierda;
si frente-libre entonces inicio
avanza;
fin
sino inicio
apagate;
fin;

norte;
fin;

define-nueva-instruccion checarlado como inicio
oeste;
si frente-libre entonces inicio
avanza;
si junto-a-zumbador entonces inicio
este;
avanza;
si ningun-zumbador-en-la-mochila entonces apagate;
si no-junto-a-zumbador y algun-zumbador-en-la-mochila entonces deja-zumbador;
norte;
avanza;
checarlado;
fin
sino inicio
este;
avanza;
si ningun-zumbador-en-la-mochila entonces apagate;
si no-junto-a-zumbador y algun-zumbador-en-la-mochila entonces deja-zumbador;
regresa;
checarlado;
fin;
fin
sino inicio
vuelta;
avanza;
norte;
si ningun-zumbador-en-la-mochila entonces apagate;
checarlado;
fin;
fin;
          define-nueva-instruccion piramide como inicio
si ningun-zumbador-en-la-mochila entonces apagate;
si no-junto-a-zumbador y algun-zumbador-en-la-mochila entonces deja-zumbador;
checarlado;
fin;


    inicia-ejecucion
    norte;
    piramide;
        apagate;
    termina-ejecucion
finalizar-programa
