iniciar-programa
define-nueva-instruccion pilon como
inicio
  gira-izquierda;
  si frente-libre entonces
  inicio
    avanza;
    si no-junto-a-zumbador entonces
    inicio
      repetir 2 veces gira-izquierda;
      avanza;
      apagate;
    fin;
    fin
    sino apagate;
   fin;
define-nueva-instruccion checa como
inicio
gira-izquierda;
si frente-libre entonces
inicio
   avanza;
   si no-junto-a-zumbador entonces
   inicio
     repetir 2 veces gira-izquierda;
     avanza;
     si frente-libre entonces
     inicio
       avanza;
       si no-junto-a-zumbador entonces
       inicio
         repetir 2 veces gira-izquierda;
         avanza;
         pilon;

       fin
       fin
       sino apagate;
    fin;
   fin
   sino
   inicio
     repetir 2 veces gira-izquierda;
     si frente-libre entonces
     inicio
     avanza;
      si no-junto-a-zumbador entonces
      inicio
        repetir 2 veces gira-izquierda;
        avanza;
        pilon;

       fin;
       fin
       sino apagate;
      fin;
      fin;

define-nueva-instruccion est como
inicio
si junto-a-zumbador entonces coge-zumbador;
   si frente-libre entonces
   inicio
     avanza;
     si junto-a-zumbador entonces
     inicio
       coge-zumbador;
       est;
     fin
     sino
     inicio
       repetir 2 veces gira-izquierda;
       avanza;
       repetir 2 veces gira-izquierda;
       checa;
       est;
      fin;
      fin
      sino
      checa;
      est;
      fin;
    inicia-ejecucion
    est;
        apagate;
    termina-ejecucion
finalizar-programa
