![]() |
  |
DFA
Definíció:
C nyelven megvalósított algoritmus:
A nyelv (L) azokat a szavakat tartalmazza, amelyek páros hosszúak és szerepel bennük legalább egy "c" karakter.
DFA #include <stdio.h> int main() { char bejovo[255]; int allapot=0; int i=0; FILE * f = fopen("bejovo.txt",
"rt"); if (f!=NULL) { fscanf(f, "%s", bejovo); fclose(f); } else { printf("Nincs fájl!"); return 1; } while (bejovo[i]!='\0') { if ((bejovo[i]=='a')||(bejovo[i]=='b')) { if (allapot==0) { allapot=1; printf("Allapot: 1-es\n"); printf("NEM vegallapot...\n\n"); } else if (allapot==1) { allapot=0; printf("Allapot: 0-as\n"); printf("NEM vegallapot...\n\n"); } else if (allapot==2) { allapot=3; printf("Allapot: 3-as\n"); printf("Az automata vegallapotba kerult.\n\n"); } else if (allapot==3) { allapot=2; printf("Allapot: 2-es\n"); printf("NEM vegallapot...\n\n"); } } else if (bejovo[i]=='c') { if ((allapot==0)||(allapot==3)) { allapot=2; printf("Allapot: 2-es\n"); printf("NEM vegallapot...\n\n"); } else if ((allapot==1)||(allapot==2)) { allapot=3; printf("Allapot: 3-as\n"); printf("Az automata vegallapotba kerult.\n\n"); } } i++; } allapot=0; getchar(); }
C kód: dfa.c Written By Carruzzo ©   |
![]() |