Exemplo n.º 1
0
        public MaquinaDeTuring Step()
        {
            try
            {
                Transicion transicionDeLaTabla = ObtenerSiguienteTransicion(EstadoActual, Cabezal.Leer());

                IndiceEnLaTablaAnterior = IndiceEnLaTabla;
                IndiceEnLaTabla         = transicionDeLaTabla.RowIndex;

                Cabezal.Escribir(transicionDeLaTabla.Escribir);
                Cabezal.Moverse(transicionDeLaTabla.Direccion);

                EstadoActual    = transicionDeLaTabla.EstadoSiguiente;
                IndiceEnLaTabla = transicionDeLaTabla.RowIndex;

                Pasos++;

                return(this);
            }
            catch (ArgumentException)
            {
                throw;
            }
            catch (Exception)
            {
                throw;
            }
        }