#include<conio.h> #include<stdio.h> void main() { int tab[10][10], i, j, k, t=65, b, r, c, l=0; char s[20], t1[50]; clrscr(); printf("enter rows and cols : "); scanf("%d",&r); scanf("%d",&c); printf("enter your state transition table : "); scanf("%s",t1); for(i=0; i<r; i++) { for(j=0; j<c; j++) { tab[i][j]=t1[l]; l++; } } for(i=0; i<r; i++) { for(j=0; j<c; j++) { printf("%c", tab[i][j]); } printf("\n"); } printf("enter a string : "); scanf("%s",s); for(i=0; i<strlen(s); i++) { for(k=0; k<r; k++) { if(t==tab[k][0]) b=k; } if(s[i]=='0') { t=tab[b][1]; } if(s[i]=='1') { t=tab[b][2]; } } if(t==tab[r-1][0]) printf("valid"); else printf("invalid"); getch(); }
Tuesday, 13 March 2012
Dynamic Finite Automata for String Validation in C
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment