Heim >Backend-Entwicklung >C++ >Programm zum Erstellen eines DFA, der mit „a' beginnt und mit „a' aus der Eingabe endet

Programm zum Erstellen eines DFA, der mit „a' beginnt und mit „a' aus der Eingabe endet

王林
王林nach vorne
2023-09-06 21:37:141399Durchsuche

Programm zum Erstellen eines DFA, der mit „a beginnt und mit „a aus der Eingabe endet

DFA steht für Deterministic Finite Automata. Es handelt sich um einen endlichen Automaten, der je nach Empfänger eine Zeichenfolge akzeptiert oder ablehnt.

Hier erstellen wir einen DFA, der Zeichenfolgen akzeptiert, die mit a beginnen und mit a enden. Die Eingabe stammt aus der Menge (a,b). Auf dieser Grundlage entwerfen wir einen DFA. Lassen Sie uns nun einige gültige und ungültige Situationen besprechen, die DFA akzeptiert.

DFA akzeptierte Zeichenfolgen: ababba, aabba, aa, a.

Strings werden von DFA nicht akzeptiert: ab, b, aabab.

Beispiel

Dieses Programm sucht nach Zeichenfolgen, die mit a beginnen und mit a enden. Dieser DFA akzeptiert alle Zeichenfolgen, die mit a beginnen und mit a enden. Der Code prüft die Gleichheit des ersten und letzten Elements und alle Elemente dazwischen können beliebige Zeichen in (a,b) sein.

#include <iostream>
#include <string.h>
using namespace std;
int main(){
   char str[] = {"ababba"};
   int lenght = strlen(str);
   if(str[0] == &#39;a&#39; && str[lenght-1] == &#39;a&#39;){
      printf("Accepted");
      else{
         printf("Rejected");
         return 0;
      }
   }
}

Ausgabe

Accepted

Das obige ist der detaillierte Inhalt vonProgramm zum Erstellen eines DFA, der mit „a' beginnt und mit „a' aus der Eingabe endet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen