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

입력(a, b)에서 'a'로 시작하고 끝나는 DFA를 구축하는 프로그램

DFA는 확정적 제한 자동기입니다. 이는 문자열을 받아들이거나 기존의 문자열을 기반으로 받아들이는 제한 자동기입니다.

이곳에서 우리는 'a'로 시작하고 끝나는 문자열을 받아들이는 DFA를 만듭니다. 입력은 집합(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 length = strlen(str);
   if(str[0] == 'a' && str[lenght-1] == 'a'){
      printf("Accepted");
      else{
         printf("Rejected");
         return 0;
      }
   }
}

출력 결과

Accepted
좋아할 만한 것