iniciar-programa
define-nueva-instruccion busca(a) como inicio
mientras frente-libre hacer inicio
    mientras no-junto-a-zumbador hacer avanza;
    si junto-a-zumbador entonces coge-zumbador;
    si junto-a-zumbador entonces inicio
        coge-zumbador;
        busca(sucede(a));
    fin;
    si no-junto-a-zumbador entonces inicio
        deja-zumbador;
        repetir 2 veces gira-izquierda;
        avanza;
        gira-izquierda;
        avanza;
        si no-junto-a-zumbador entonces inicio
            repetir 2 veces gira-izquierda;
            avanza;
            repetir 2 veces gira-izquierda;
        fin;
        si junto-a-zumbador entonces inicio
            coge-zumbador;
            si no-junto-a-zumbador entonces inicio
                deja-zumbador;
                repetir 2 veces gira-izquierda;
                avanza;
                repetir a veces deja-zumbador;
                apagate;
            fin;
            si junto-a-zumbador entonces inicio
                deja-zumbador;
                repetir 2 veces gira-izquierda;
                avanza;
                repetir 2 veces gira-izquierda;
            fin;
        fin;
    si orientado-al-este entonces inicio
        repetir 3 veces gira-izquierda;
        repetir 2 veces avanza;
        gira-izquierda;
        repetir 2 veces avanza;
    fin;
    fin;


    fin;
    fin;
    inicia-ejecucion
    busca(0);
    termina-ejecucion
finalizar-programa
