Exemple #1
0
        public static bool accept(AFD M, string w)
        {
            bool res;

            char[] letters = w.ToCharArray();
            int    state   = M.startState;

            for (int i = 0; i < letters.Length; i++)
            {
                int nextState = M.δ(state, letters[i]);
                state = nextState;
            }

            if (M.finalStates.Contains(state))
            {
                res = true;
            }
            else
            {
                res = false;
            }

            return(res);
        }