ホームページ >バックエンド開発 >C++ >入力から「a」で始まり「a」で終わる DFA を構築するプログラム

入力から「a」で始まり「a」で終わる DFA を構築するプログラム

王林
王林転載
2023-09-06 21:37:141399ブラウズ

入力から「a」で始まり「a」で終わる DFA を構築するプログラム

DFA は Deterministic Finite Automata の略です。これは、受信者に基づいて文字列を受け入れるか拒否する有限状態マシンです。

ここでは、a で始まり a で終わる文字列を受け入れる DFA を作成します。入力はセット (a,b) から取得されます。これをもとにDFAを設計していきます。ここで、DFA が受け入れる有効な状況と無効な状況について説明します。

DFA が受け入れる文字列: ababba、aabba、aa、a。

DFA で受け入れられない文字列: ab、b、aabab。

このプログラムは、a で始まり a で終わる文字列をチェックします。この DFA は、a で始まり a で終わるすべての文字列を受け入れます。コードは最初と最後の要素が等しいかどうかをチェックし、その間のすべての要素は (a,b) 内の任意の文字にすることができます。

#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;
      }
   }
}

出力

Accepted

以上が入力から「a」で始まり「a」で終わる DFA を構築するプログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。