iniciar-programa
define-nueva-instruccion busca como
    inicio
      si frente-libre y no-junto-a-zumbador  entonces
        inicio
           avanza;
            busca;
            avanza;
        fin
        sino
         si junto-a-zumbador entonces   
           apagate
          sino
           repetir 2 veces gira-izquierda;
        fin;
      define-nueva-instruccion chunch como
        inicio
           gira-izquierda;
            busca;
            gira-izquierda;
        fin;
    inicia-ejecucion
    si junto-a-zumbador entonces apagate;
     mientras frente-libre hacer
      avanza;
      gira-izquierda;

      mientras frente-bloqueado o frente-libre hacer
        inicio
          mientras derecha-bloqueada y frente-libre hacer
            inicio
              avanza;
              chunch;
            fin;
            si derecha-libre entonces
              inicio
                repetir 3 veces gira-izquierda;
                avanza;
                chunch;
                si derecha-libre entonces
                  inicio
                    repetir 3 veces gira-izquierda;
                     avanza;
                     chunch;
                     fin;
                 fin
                 sino
                  gira-izquierda;
              fin;
        apagate;
    termina-ejecucion
finalizar-programa
