English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

建立DFA的程序,该DFA以输入(a,b)中的'a'开始和结束

DFA代表确定性有限自动机。它是一个有限状态机,可以接受或基于其接受器的字符串。

在这里,我们将制作一个DFA,该DFA接受以a开头和结尾的字符串。输入来自集合(a,b)。基于此,我们将设计DFA。现在,让我们讨论DFA接受的一些有效和无效案例。

DFA接受的字符串:ababba,aabba,aa,a。

DFA不接受的字符串:ab,b,aabab。

示例

该程序检查以a开头和结尾的字符串。此DFA将接受以a开头和结尾的所有字符串。该代码检查第一个元素和最后一个元素是否相等,并且可以通过(a,b)放置它们之间的所有内容。

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

输出结果

Accepted