Детерминированные конечные автоматы на JFLAP

У меня проблема с DFA, и мне нужно использовать JFLAP для создания диаграммы для автоматов. Я успешно решил более простую задачу, но я просто не могу понять, как ее решить:

"DFA, который принимает последовательности значений" 1 "и" 2 ", принимая только последовательности, которые приводят к 4. Любые другие комбинации, которые приводят к более или менее 4, должны быть отклонены".

Алфавит {1,2} и, насколько мне известно, будут приняты следующие возможные комбинации:

1111, 22, 121, 112, 211

Любая помощь будет очень признательна. Спасибо.

1 ответ

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
Другие вопросы по тегам