iniciar-programa
    define-nueva-instruccion este como inicio
       mientras no-orientado-al-este hacer inicio
           gira-izquierda;
       fin;
    fin;

    define-nueva-instruccion oeste como inicio
       mientras no-orientado-al-oeste hacer inicio
           gira-izquierda;
       fin;
    fin;

    define-nueva-instruccion sur como inicio
       mientras no-orientado-al-sur hacer inicio
           gira-izquierda;
       fin;
    fin;

    define-nueva-instruccion norte como inicio
       mientras no-orientado-al-norte hacer inicio
           gira-izquierda;
       fin;
    fin;


    define-nueva-instruccion veriFin como inicio
       norte;
       mientras frente-libre y derecha-bloqueada hacer inicio
          avanza;
       fin;
       si derecha-bloqueada entonces inicio
          sur;
          mientras frente-libre hacer inicio
             avanza;
          fin;
       Fin sino inicio
          sur;
          mientras frente-libre hacer inicio
             avanza;
          fin;
          este;
       fin;
    fin;

    define-nueva-instruccion camina como inicio
             norte;
             mientras frente-libre y derecha-bloqueada hacer inicio
                avanza;
             fin;
             si derecha-bloqueada entonces inicio
                sur;
                mientras frente-libre hacer inicio
                   avanza;
                fin;
             Fin sino inicio
                este ;
                avanza;
                sur;
                mientras frente-libre hacer inicio
                   avanza;
                fin;
                este;
             fin;
             veriFin;
    fin;


    define-nueva-instruccion brincaDer como inicio
       norte;
       mientras izquierda-bloqueada y frente-libre hacer inicio
          avanza;
       fin;
       oeste;
       si frente-libre entonces inicio
          avanza;
          sur;
          mientras frente-libre hacer inicio
             avanza;
          fin;
          oeste;
       fin;
    fin;


   define-nueva-instruccion regresa como inicio
        si frente-libre entonces inicio
           avanza;
        fin sino inicio
           brincaDer;
        fin;
    fin;


   define-nueva-instruccion mitad como inicio
       si no-orientado-al-sur entonces inicio
          camina;
          camina;
          mitad;
          regresa;
       fin sino inicio
          oeste;
       fin;
    fin;


    inicia-ejecucion
        este;
        si no (frente-bloqueado y derecha-bloqueada y izquierda-bloqueada ) entonces inicio
          mitad;
        fin;
        apagate;
    termina-ejecucion
finalizar-programa
