%{
#include<stdio.h>
int lc=0, sc=0, wc=0, cc=0;
%}
%%
[\n] {lc++; cc+=yyleng;}
[ \t] {sc++; cc+=yyleng;}
[^\t\n ]+ {wc++; cc+=yyleng;}
%%
int main()
{
printf("Enter the input:\n");
yylex();
printf("No. of words are: %d\n", wc);
printf("No. of characters are: %d\n", cc);
printf("No. of new lines are: %d\n", lc);
printf("No. of spacess are: %d\n", sc);
}
int yywrap()
{
return 1;
}x([X | T], [X | R]) :- lex(T, R).
JXsKI2luY2x1ZGU8c3RkaW8uaD4KaW50IGxjPTAsIHNjPTAsIHdjPTAsIGNjPTA7CiV9CgolJQpbXG5dIHtsYysrOyBjYys9eXlsZW5nO30KWyBcdF0ge3NjKys7IGNjKz15eWxlbmc7fQpbXlx0XG4gXSsge3djKys7IGNjKz15eWxlbmc7fQolJQoKaW50IG1haW4oKQp7CnByaW50ZigiRW50ZXIgdGhlIGlucHV0OlxuIik7Cnl5bGV4KCk7CnByaW50ZigiTm8uIG9mIHdvcmRzIGFyZTogJWRcbiIsIHdjKTsKcHJpbnRmKCJOby4gb2YgY2hhcmFjdGVycyBhcmU6ICVkXG4iLCBjYyk7CnByaW50ZigiTm8uIG9mIG5ldyBsaW5lcyBhcmU6ICVkXG4iLCBsYyk7CnByaW50ZigiTm8uIG9mIHNwYWNlc3MgYXJlOiAlZFxuIiwgc2MpOwp9CmludCB5eXdyYXAoKQp7CnJldHVybiAxOwp9eChbWCB8IFRdLCBbWCB8IFJdKSA6LSBsZXgoVCwgUikuCg==