iniciar-programa
    define-nueva-instruccion gira(n) como inicio
       repetir n veces
          gira-izquierda;
    fin;
    define-nueva-instruccion norte como inicio
       mientras no-orientado-al-norte hacer
          gira(1);
    fin;
    define-nueva-instruccion sur como inicio
       mientras no-orientado-al-sur hacer
          gira(1);
    fin;
    define-nueva-instruccion este como inicio
       mientras no-orientado-al-este hacer
          gira(1);
    fin;
    define-nueva-instruccion oeste como inicio
       mientras no-orientado-al-oeste hacer
          gira(1);
    fin;
    define-nueva-instruccion busca como inicio
        si junto-a-zumbador entonces inicio
           coge-zumbador;
           norte;
           si frente-libre entonces inicio
               avanza;
               si junto-a-zumbador entonces
                   busca;
               sur;
               avanza;
           fin;
           sur;
           si frente-libre entonces inicio
               avanza;
               si junto-a-zumbador entonces
                   busca;
               norte;
               avanza;
           fin;
           este;
           si frente-libre entonces inicio
               avanza;
               si junto-a-zumbador entonces
                   busca;
               oeste;
               avanza;
           fin;
           oeste;
           si frente-libre entonces inicio
               avanza;
               si junto-a-zumbador entonces
                   busca;
               este;
               avanza;
           fin;
           apagate;
        fin;
    fin;
    inicia-ejecucion
        busca;
        apagate;
    termina-ejecucion
finalizar-programa
