iniciar-programa
    Define-nueva-instruccion gira (n) como inicio
        repetir n veces
            gira-izquierda;
    fin;

    Define-nueva-instruccion orienta como inicio
        mientras no-orientado-al-este hacer
            gira (1);
        mientras frente-libre hacer
            avanza;
        gira (2);
    fin;

    Define-nueva-instruccion pasa como inicio
        gira (2);
        mientras frente-libre hacer
            avanza;
        gira (1);
        mientras derecha-bloqueada hacer
            avanza;
        gira (3);
        avanza;
        gira (3);
        mientras frente-libre hacer
            avanza;
    fin;

    Define-nueva-instruccion recoge como inicio
        si junto-a-zumbador entonces inicio
            coge-zumbador;
            recoge;
            deja-zumbador;
        fin
        sino inicio
            si frente-libre entonces inicio
                avanza;
                recoge;
                mientras no-orientado-al-este hacer
                   gira (1);
                avanza;
            fin
            sino inicio
                pasa;
            fin;
        fin;
    fin;
    inicia-ejecucion
    orienta;
    recoge;
        apagate;
    termina-ejecucion
finalizar-programa