Ejemplo n.º 1
0
        private TuringMachine(SerializationInfo info, StreamingContext context)
        {
            _tapes = info.GetValue("t", typeof(TuringTapes)) as TuringTapes;
            _symbols = info.GetValue("s", typeof(SymbolSet)) as SymbolSet;

            _tapes.TapeUpdated += _tapes_TapeUpdated;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Инициализирует машину Тьюринга единственной пустой лентой.
        /// </summary>
        public TuringMachine()
        {
            _tapes = new TuringTapes(1);
            _stateIndex = -1;
            _states = null;
            _symbols = new SymbolSet();

            _tapes.TapeUpdated += _tapes_TapeUpdated;
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Инициализирует машину Тьюринга заданным количеством лент.
        /// </summary>
        /// <param name="tapesCount">Количество создаваемых лент.</param>
        public TuringMachine(int tapesCount)
        {
            if (tapesCount < 1)
                throw new ArgumentException("Количество лент должно быть положительным");

            _tapes = new TuringTapes(tapesCount);
            _stateIndex = -1;
            _states = null;
            _symbols = new SymbolSet();
        }