PROGRAM Using Transition Table:
#include<stdio.h>
#include<string.h>
int main()
{
char state='A',str[50],input[20],inputstate[20],outputstate[20];
int j,i=0;
strcpy(input, "abcabcabcabcabc");
strcpy(inputstate, "AAABBBCCCDDDEEE");
strcpy(outputstate, "BCDBCDECDEEDEEE");
printf("Enter string : ");
scanf("%s",str);
while(str[i]!='\0')
{
for(j=0;j<15;j++)
{
if(inputstate[j] == state && input[j] == str[i])
{
state = outputstate[j];
break;
}
}
if(j==15)
{
state = 'F';
break;
}
i++;
}
if(state == 'A' || state == 'B' || state == 'C' || state == 'D' || state=='E' )
printf("Valid");
else
printf("InVALid");
return 0;
}

No comments:
Post a Comment