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

define-nueva-instruccion compara como inicio
      si junto-a-zumbador entonces
     inicio
         coge-zumbador;
         compara;
         si junto-a-zumbador entonces
           coge-zumbador;
      fin
      sino
       inicio
         mientras algun-zumbador-en-la-mochila  hacer
         deja-zumbador;
         este;
         avanza;
         si no-junto-a-zumbador entonces sal-de-instruccion;
       fin;
fin;

define-nueva-instruccion dejarlos como inicio
mientras algun-zumbador-en-la-mochila hacer deja-zumbador;    este; fin;


define-nueva-instruccion cuales como inicio
 si junto-a-zumbador entonces
      inicio
         mientras algun-zumbador-en-la-mochila hacer
         deja-zumbador;
      fin
       sino
         inicio
           mientras algun-zumbador-en-la-mochila hacer
             deja-zumbador;
             si junto-a-zumbador entonces
             inicio
                gira-izquierda;
                gira-izquierda;
                avanza;
             fin;
         fin;
fin;

define-nueva-instruccion pasar-oeste como inicio
si orientado-al-oeste entonces
   inicio
      mientras junto-a-zumbador hacer
      coge-zumbador;
      norte;
      avanza;
      sur;
           mientras algun-zumbador-en-la-mochila hacer
      deja-zumbador;
      avanza;
      este;
      avanza;


   mientras junto-a-zumbador hacer
     coge-zumbador;
      oeste;
      avanza;
   mientras algun-zumbador-en-la-mochila hacer
      deja-zumbador;
      norte;
      avanza;
   mientras junto-a-zumbador hacer
     coge-zumbador;
     sur;
     avanza;
     este;
     avanza;
   mientras algun-zumbador-en-la-mochila hacer
      deja-zumbador;
      sur;
 fin
 sino
 inicio
 sur;
 fin;

fin;

define-nueva-instruccion repitee como inicio
compara;
cuales;
pasar-oeste;
fin;

define-nueva-instruccion aclara como inicio
   si junto-a-zumbador entonces
   inicio
       coge-zumbador;
       aclara;
       si junto-a-zumbador entonces repitee;
       si orientado-al-este entonces avanza;
   fin
   sino
     inicio
     dejarlos;
     avanza;
     avanza;
 fin;
fin;

define-nueva-instruccion acomodar como inicio
oeste;
mientras frente-libre hacer
  avanza;
este;
  si junto-a-zumbador entonces
    inicio
        coge-zumbador;
        norte;
        avanza;
        sur;
        deja-zumbador;
        avanza;
        este;
   fin
   sino
   inicio
   apagate;
   fin;
aclara;

fin;



inicia-ejecucion
    este;
    aclara;
    acomodar;
    repetir 30 veces inicio
    mientras no-junto-a-zumbador  hacer
      inicio
      acomodar;
      fin;
    oeste;
    mientras frente-libre hacer  avanza;
    norte;
    avanza;
    mientras junto-a-zumbador hacer coge-zumbador;
    sur;
    avanza;
    mientras algun-zumbador-en-la-mochila hacer
    deja-zumbador;
     este;
     acomodar;
   fin;




             apagate;
    termina-ejecucion
finalizar-programa
