iniciar-programa
    define-nueva-instruccion contar(x) como
    inicio
        si frente-bloqueado entonces
        inicio
            repetir x veces
            inicio
                deja-zumbador;
            fin;
            apagate;
        fin;
        si derecha-libre entonces
        inicio
            si orientado-al-norte entonces
            inicio
                avanza;
                contar(sucede(x));
            fin
            sino
            inicio
                si orientado-al-sur entonces
                inicio
                    avanza;
                    contar(precede(x));
                fin
                sino
                inicio
                    avanza;
                    contar(x);
                fin
            fin;
         fin;
            si derecha-bloqueada entonces
            inicio
                gira-izquierda;
                contar(x);
            fin;
  fin;
    inicia-ejecucion
        contar(0);
        apagate;
    termina-ejecucion
finalizar-programa
