iniciar-programa

    define-nueva-instruccion gira(n) como inicio
        repetir n veces gira-izquierda;
    fin;

    define-nueva-instruccion llega11 como inicio
        mientras no-orientado-al-sur hacer gira(1);
        mientras frente-libre hacer avanza;
        mientras no-orientado-al-oeste hacer gira(1);
        mientras frente-libre hacer avanza;
        gira(3);
    fin;

    define-nueva-instruccion paso como inicio
            coge-zumbador;
            si frente-libre entonces inicio
                avanza;
            fin sino inicio
                mientras no-orientado-al-este hacer gira(1);
                si frente-libre entonces inicio
                    avanza;
                    si derecha-bloqueada entonces inicio
                        gira-izquierda;
                    fin sino inicio
                        repetir 3 veces gira-izquierda;
                    fin;
                fin sino inicio
                    llega11;
                fin;
            fin;
        fin;



    inicia-ejecucion
        llega11;
        mientras junto-a-zumbador hacer inicio
            paso;
        fin;
        repetir 100 veces deja-zumbador;
        apagate;
    termina-ejecucion
finalizar-programa
