Thursday, January 21, 2010

RECURSIVE DESCENT PARSER

#include stdio.h
#include conio.h
int main()
{
char g[30]={"S->icts/wcts/dtcs" };
char s[40];
int i,j,k;
clrscr();
printf("Grammar \n\n");
for(i=0;g[i]!='\0';i++)
printf("%c",g[i]);
printf("Enter the string : ");
gets(s);
for(i=0,k=3;(s[i]!='\0')&&(g[k]!='\0');k++)
{
if(g[k]!=s[i])
{
for(j=k;(g[j]!='/')&&(g[j]!='\0');j++);
k=j;
}
else
i++;
}
if(s[i]=='\0'&&(g[k]=='/'||g[k]=='\0'))
{
printf("String is Accepted");
exit(0);
}
printf("String is not accepted");
return 0;
}
OUTPUT:
Grammar:
S->icts/wcts/dtcs
Enter the string : wctg
String is not accepted

Grammar:
S->icts/wcts/dtcs
Enter the string : dtcs
String is Accepted

No comments:

Post a Comment

  © For Movies Click Here Softwares by For Games Click Here 2010

Back to TOP