JFLAP上的确定性有限自动机

时间:2019-10-30 19:50:59

标签: finite-automata dfa jflap

我遇到了DFA问题,需要使用JFLAP为自动机创建图表。我已经成功地完成了一个更简单的问题,但是我只是想不通如何解决这个问题:

“接收到值分别为“ 1”和“ 2”的序列的DFA,仅接受结果为4的序列。任何其他结果大于或小于4的组合都将被拒绝。”

字母为{1,2},据我所知,这些是可能会接受的组合:

  

1111,22,121,112,211

任何帮助将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:0)

这种有限语言的DFA看起来很像这样:

         1       1        1         1
----->q----->q1----->q11----->q111----->q1111
      |       |        |      |         | 
      | 2     | 2      | 1    | 2       | 1,2
      |       |        |      |         |
      V   1   V    1   V      |         |
      q2----->q21----->q211   |         |
      |       |        |      |         |
      | 2     | 2      | 1,2  |         |
      |       |        |      |         |
      V       |        |      |         |
      q22     |        |      |         |
      |       |        |      |         |
      | 1,2   |        |      |         |             +-----+
      |       |        |      |         |             |     | 1,2
      V       V        V      V         V             V     |
      +-------+--------+------+---------+--------->qDead----+

另一种方法是只记住当前的总和:

           1
 ----->q0----->q1
       |       /|
       |      / |
       |     /  |
     2 |  1 /   | 2
       |   /    |
       |  /     |
       | /      |
       |/       |
       V   1    V
       q2----->q3
       |       /|
       |      / |
       |     /  |
     2 |  1 /   | 2
       |   /    |
       |  /     |
       | /      |
       |/       |
       V  1,2   V
       q4----->qDead