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

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

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

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

    define-nueva-instruccion posicionar como inicio
        orientadoSur;
        mientras frente-libre hacer inicio
            avanza;
        fin;
        orientadoNorte;
    fin;

    define-nueva-instruccion buscaSalida como inicio
        mientras derecha-bloqueada y no-junto-a-zumbador hacer
        inicio
            avanza;
            mientras junto-a-zumbador hacer
            inicio
            apagate;
            fin;
        fin;
    fin;

    define-nueva-instruccion cambiarColumna como inicio
        orientadoEste;
        mientras frente-libre hacer inicio
        avanza;
        fin;
        posicionar;
    fin;
    inicia-ejecucion
    posicionar;
    mientras no-junto-a-zumbador hacer inicio
        buscaSalida;
        cambiarColumna;
    fin;
        apagate;
    termina-ejecucion
finalizar-programa


