iniciar-programa
    define-nueva-instruccion termina(n) como inicio
           repetir n veces inicio
               deja-zumbador;
           fin;
           apagate;
    fin;

    define-nueva-instruccion camina(n) como inicio
        si frente-bloqueado entonces inicio
           termina(n);
        fin sino inicio
           si derecha-bloqueada entonces inicio
              gira-izquierda;
           fin;
           si frente-libre entonces inicio
              avanza;
              si orientado-al-norte entonces inicio
                  camina(sucede(n));
              fin sino inicio
                  si orientado-al-sur entonces inicio
                     camina(precede(n));
                  fin sino inicio
                     camina(n);
                  fin;
              fin;
           fin sino inicio
              termina(n);
           fin;
        fin;

    fin;


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