iniciar-programa
    define-nueva-instruccion sal como inicio
        si frente-libre entonces inicio
            avanza;
            si no-junto-a-zumbador entonces inicio
                sal;
            fin sino inicio
                coge-zumbador;
            fin;
            deja-zumbador;
        fin sino inicio
                si derecha-libre entonces inicio
                    gira-izquierda;
                    gira-izquierda;
                    gira-izquierda;
                        si no-junto-a-zumbador entonces inicio
                            sal;
                        fin sino inicio
                            coge-zumbador;
                        fin;
                    deja-zumbador;
                    deja-zumbador;
                    deja-zumbador;
                fin sino inicio
                    si izquierda-libre entonces inicio
                        gira-izquierda;
                        si no-junto-a-zumbador entonces inicio
                            sal;
                        fin sino inicio
                            coge-zumbador;
                        fin;
                        deja-zumbador;
                    fin sino inicio
                        si frente-bloqueado entonces inicio
                            gira-izquierda;
                            si no-junto-a-zumbador entonces inicio
                                sal;
                            fin sino inicio
                            coge-zumbador;
                            fin;
                        fin;
                    fin;
                fin;
           fin;
       fin;
    inicia-ejecucion
        si junto-a-zumbador entonces inicio
            coge-zumbador;
            apagate;
        fin sino inicio
            sal;
        fin;
        apagate;
    termina-ejecucion
finalizar-programa
