iniciar-programa

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

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

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

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


    define-nueva-instruccion inicioRenglon como inicio
        orientaEste;
        mientras frente-libre hacer inicio
            avanza;
        fin;
        orientaOeste;
    fin;

    define-nueva-instruccion divide como inicio
        si frente-libre entonces inicio
           avanza;
           avanza;
           divide;
           avanza;
        fin sino inicio
           orientaEste;
        fin;
    fin;

    define-nueva-instruccion cambioRenglon como inicio
       mientras frente-libre y izquierda-bloqueada hacer inicio
           avanza;
       fin;
       si izquierda-libre entonces  inicio
          gira-izquierda;
          avanza;
       fin
       sino inicio
          orientaNorte;
       fin;
    fin;


    inicia-ejecucion
        mientras no-orientado-al-norte hacer inicio
           inicioRenglon;
           divide;
           deja-zumbador;
           inicioRenglon;
           cambioRenglon;
        fin;
        apagate;
    termina-ejecucion
finalizar-programa

