iniciar-programa
define-nueva-instruccion g(h) como inicio
    repetir h veces gira-izquierda;
fin;

define-nueva-instruccion x(n) como inicio
    si junto-a-zumbador entonces inicio
        coge-zumbador;
        x(sucede(n));
    fin
    sino inicio
        mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
        si junto-a-zumbador entonces inicio
            repetir 4 veces inicio
                si frente-libre entonces inicio
                avanza;
                repetir n veces inicio
                    si junto-a-zumbador entonces inicio
                        coge-zumbador;
                    fin
                    sino inicio
                        mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
                        x(0);
                    fin;
                fin;
                mientras algun-zumbador-en-la-mochila hacer deja-zumbador;
                g(2);
                avanza;
                g(1);
                fin
                sino inicio
                    g(3);

                fin;

            fin;
            apagate;
        fin
        sino inicio
            apagate;
        fin;
    fin;
fin;

    inicia-ejecucion
    x(0);
        apagate;
    termina-ejecucion
finalizar-programa
