logo

Exemple de DFA

Exemplul 1:

Proiectați un FA cu ∑ = {0, 1} acceptă acele șiruri care începe cu 1 și se termină cu 0.

Soluţie:

FA va avea o stare de pornire q0 din care doar muchia cu intrarea 1 va trece la următoarea stare.

Exemple de automate finite deterministe

În starea q1, dacă citim 1, vom fi în starea q1, dar dacă citim 0 în starea q1, vom ajunge la starea q2 care este starea finală. În starea q2, dacă citim fie 0, fie 1, vom merge la starea q2 sau, respectiv, la starea q1. Rețineți că dacă intrarea se termină cu 0, aceasta va fi în starea finală.

charat java

Exemplul 2:

Proiectarea unui FA cu ∑ = {0, 1} acceptă singura intrare 101.

Soluţie:

Exemple de automate finite deterministe

În soluția dată, putem vedea că doar intrarea 101 va fi acceptată. Prin urmare, pentru intrarea 101, nu există nicio altă cale afișată pentru altă intrare.

Exemplul 3:

Proiectarea FA cu ∑ = {0, 1} acceptă un număr par de 0 și un număr par de 1.

Soluţie:

imaginea centrală în css

Acest FA va lua în considerare patru etape diferite pentru intrarea 0 și intrarea 1. Etapele ar putea fi:

Exemple de automate finite deterministe

Aici q0 este o stare de început și, de asemenea, starea finală. Rețineți cu atenție că se menține o simetrie a lui 0 și 1. Putem asocia semnificații fiecărei stări ca:

q0: starea numărului par de 0 și a numărului par de 1.
q1: starea numărului impar de 0 și a numărului par de 1.
q2: starea numărului impar de 0 și a numărului impar de 1.
q3: starea numărului par de 0 și a numărului impar de 1.

Exemplul 4:

Design FA cu ∑ = {0, 1} acceptă setul tuturor șirurilor cu trei 0 consecutive.

panda creând un cadru de date

Soluţie:

Șirurile care vor fi generate pentru aceste limbi specifice sunt 000, 0001, 1000, 10001, .... în care 0 apare întotdeauna într-un grup de 3. Graficul de tranziție este următorul:

Exemple de automate finite deterministe

Rețineți că secvența de zerouri triple este menținută pentru a ajunge la starea finală.

Exemplul 5:

Proiectați un DFA L(M) = {w | w ε {0, 1}*} și W este un șir care nu conține 1 consecutiv.

cum să redenumești un director în linux

Soluţie:

Când apar trei 1 consecutiv, DFA va fi:

Exemple de automate finite deterministe

Aici două 1 consecutive sau un singur 1 sunt acceptabile, prin urmare

Exemple de automate finite deterministe

Etapele q0, q1, q2 sunt stările finale. DFA va genera șirurile care nu conțin 1 consecutiv, cum ar fi 10, 110, 101,..... etc.

Exemplul 6:

Proiectați un FA cu ∑ = {0, 1} acceptă șirurile cu un număr par de 0 urmat de un singur 1.

Soluţie:

DFA poate fi prezentat printr-o diagramă de tranziție ca:

Exemple de automate finite deterministe