iniciar-programa
define-nueva-instruccion gira(n) como
inicio
     repetir n veces gira-izquierda;
fin;
define-nueva-instruccion traga como
inicio
     coge-zumbador;
     repetir 4 veces
     inicio
          si frente-libre y no-orientado-al-sur entonces
          inicio
               avanza;
               si junto-a-zumbador entonces

                    traga;
                    gira(2);
                    avanza;
                    gira(2);


             fin;
             gira(1);
          fin;
        fin;
define-nueva-instruccion poda como
inicio
  mientras no-orientado-al-este hacer
    gira-izquierda;
    mientras no-junto-a-zumbador hacer
    avanza;
    gira(1);
    mientras junto-a-zumbador y frente-libre hacer
    inicio
         coge-zumbador;

         si izquierda-libre entonces
         inicio
              gira(1);
              avanza;
              si junto-a-zumbador entonces
              traga;
              gira(2);
              avanza;
              gira(1);
         fin;
          si derecha-libre entonces
         inicio
              gira(3);
              avanza;
              si junto-a-zumbador entonces
              traga;
              gira(2);
              avanza;
              gira(3);
         fin;
         deja-zumbador;
         avanza;
      fin;
    fin;
    inicia-ejecucion
     poda;
     gira(2);
     mientras frente-libre hacer
     avanza;
     gira(3);
     mientras frente-libre hacer
     avanza;
     mientras algun-zumbador-en-la-mochila hacer
     deja-zumbador;
        apagate;
    termina-ejecucion
finalizar-programa
