iniciar-programa
    define-nueva-instruccion norte como mientras no orientado-al-norte hacer gira-izquierda;
    define-nueva-instruccion sur como mientras no orientado-al-sur hacer gira-izquierda;
    define-nueva-instruccion este como mientras no orientado-al-este hacer gira-izquierda;
    define-nueva-instruccion oeste como  mientras no orientado-al-oeste hacer gira-izquierda;
    define-nueva-instruccion ir11 como inicio
    oeste;
    mientras frente-libre hacer
        avanza;
    sur;
    mientras frente-libre hacer
        avanza;
     si frente-bloqueado entonces
         este;
    fin;
    define-nueva-instruccion saltar como inicio
         si frente-libre entonces inicio
                avanza;
            fin sino inicio
                norte;
                si frente-libre entonces inicio
                    avanza;
                fin sino
                    sal-de-instruccion;
                si izquierda-bloqueada entonces inicio
                    este
                fin sino
                    oeste;
            fin;
    fin;
    define-nueva-instruccion busca como inicio
        mientras no orientado-al-norte hacer inicio
            si junto-a-zumbador entonces inicio
                coge-zumbador;
                si junto-a-zumbador entonces inicio
                    coge-zumbador;
                    si junto-a-zumbador entonces inicio
                        deja-zumbador;
                        deja-zumbador;
                        sal-de-instruccion;
                    fin sino
                        deja-zumbador;
                        deja-zumbador;
                fin;
                si no-junto-a-zumbador entonces inicio
                    deja-zumbador;
                    sal-de-instruccion;
                fin;
            fin;
           saltar;
         fin;
    fin;
    define-nueva-instruccion buscar como inicio
        mientras no-orientado-al-norte hacer inicio
        si junto-a-zumbador entonces
            sal-de-instruccion;
        saltar;
        fin;
    fin;
    define-nueva-instruccion k2 como inicio
        buscar;
        si junto-a-zumbador entonces inicio
            coge-zumbador;
            coge-zumbador;
            k2;
            deja-zumbador;
            deja-zumbador;
            si frente-libre entonces
            avanza;
        fin sino inicio
            ir11;
            este;
            avanza;
            norte;
        fin;
    fin;
    define-nueva-instruccion k1 como inicio
        busca;
        si junto-a-zumbador y no(orientado-al-norte) entonces inicio
            coge-zumbador;
            k1;
            deja-zumbador;
            si frente-libre entonces
            avanza;
        fin sino inicio
            ir11;
            k2;
            ir11;
            norte;
        fin;
    fin;
    inicia-ejecucion
        ir11;
        k1;
        apagate;
    termina-ejecucion
finalizar-programa
