iniciar-programa
  define-nueva-instruccion norte como
   mientras no-orientado-al-norte hacer gira-izquierda;
  define-nueva-instruccion sur como
   mientras no-orientado-al-sur hacer gira-izquierda;
  define-nueva-instruccion este como
   mientras no-orientado-al-este hacer gira-izquierda;
  define-nueva-instruccion oeste como
   mientras no-orientado-al-oeste hacer gira-izquierda;
  define-nueva-instruccion rec como
   inicio
    si junto-a-zumbador entonces
      inicio
      coge-zumbador;
      rec;
      deja-zumbador;
      fin
      sino inicio norte; avanza; fin;
   fin;
  define-nueva-instruccion oestin como
   inicio
   oeste;
    si frente-libre entonces
     inicio
     avanza;
     oestin;
     este;
     avanza;
     fin
     sino
     inicio
     mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
     fin;
   fin;
  define-nueva-instruccion surin como
    inicio
    sur;
    si frente-libre entonces
     inicio
     avanza;
     surin;
     norte;
     avanza;
     fin
     sino oestin;
    fin;
  define-nueva-instruccion traga(x) como
    inicio
     si junto-a-zumbador entonces
       inicio
       coge-zumbador;  si junto-a-zumbador entonces deja-zumbador;   
        repetir 4 veces
         inicio
          si frente-libre entonces
            inicio
            avanza;
            traga(sucede(x));
            repetir 2 veces gira-izquierda;
            avanza;
            repetir 2 veces gira-izquierda;
            fin;
           gira-izquierda;
         fin;
       fin;
    fin;
    inicia-ejecucion
    surin;
    traga(0);
    sur; mientras frente-libre hacer avanza;
    oeste; mientras frente-libre hacer avanza;
    norte; avanza; si junto-a-zumbador entonces
    inicio
    coge-zumbador;
    sur; avanzA;
    rec;
    sur; avanza;
    mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
    coge-zumbador;
    norte; avanza;
    mientras junto-a-zumbador hacer coge-zumbador;
    deja-zumbador;
    sur; avanza;
    fin sino
    inicio sur; avanza; rec;
   sur; avanza;
     mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
     norte; avanza;
        mientras junto-a-zumbador hacer coge-zumbador;
        sur; avanza;
    fin;


        apagate;
    termina-ejecucion
finalizar-programa
