iniciar-programa
 define-nueva-instruccion invertir como
  inicio
   gira-izquierda;
   gira-izquierda;
  fin;
 define-nueva-instruccion derecha como
  inicio
   repetir 3 veces
    gira-izquierda;
  fin;
 define-nueva-instruccion mov como
  inicio
   si junto-a-zumbador entonces
    inicio
     coge-zumbador;
     mov;
     deja-zumbador;
    fin
   sino
    inicio
     avanza;
    fin;
  fin;
 define-nueva-instruccion reco como
  inicio
   avanza;
   mientras junto-a-zumbador hacer
    inicio
     invertir;
     mov;
     invertir;
     avanza;
     avanza;
    fin;
  fin;
 define-nueva-instruccion lleva(n) como
  inicio
   si junto-a-zumbador entonces
    inicio
     coge-zumbador;
     lleva(sucede(n));
    fin
   sino
    inicio
     repetir n veces
      deja-zumbador;
     gira-izquierda;
     avanza;
     gira-izquierda;
     avanza;
     repetir n veces
      deja-zumbador;
     gira-izquierda;
     avanza;
     gira-izquierda;
    fin;
  fin;
 define-nueva-instruccion ord como
  inicio
   si junto-a-zumbador entonces
    inicio
     coge-zumbador;
     avanza;
     invertir;
     ord;
     deja-zumbador;
    fin
   sino
    inicio
     si orientado-al-oeste entonces
      inicio
       avanza;
       invertir;
       mov;
       invertir;
      fin
    fin;
   avanza;
   invertir;
  fin;
 define-nueva-instruccion cm como
  inicio
   mientras frente-libre o frente-bloqueado hacer
    inicio
     repetir 2 veces
      inicio
       mientras no-orientado-al-este hacer
        gira-izquierda;
       mientras junto-a-zumbador hacer
        avanza;
       invertir;
       avanza;
       si frente-bloqueado entonces
        apagate;
       mientras frente-libre hacer
        inicio
         ord;
         si orientado-al-oeste entonces
          inicio
           avanza;
          fin
         sino
          inicio
           invertir;
          fin;
        fin;
      fin;
     invertir;
     mov;
     lleva(0);
     reco;
     invertir;
     mientras frente-libre hacer
      avanza;
    fin;
  fin;
    inicia-ejecucion
     cm;
        apagate;
    termina-ejecucion
finalizar-programa
