Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- zad 1
- c
- ws [\t ]
- %%
- [A-Z][a-zA-z]* {printf("%s: ",yytext);}
- {ws} {printf("");}
- %%
- zad 2
- %Start s0 s1 e
- %{
- int lz = 0;
- int lj = 0;
- %}
- zero 0
- jeden 1
- nl [\r\n]
- %%
- <INITIAL>{zero} { lz++; BEGIN(s0); ECHO;}
- <INITIAL>{nl} { printf(" OK\n"); }
- <INITIAL>. { BEGIN(e); ECHO;}
- <s0>{jeden} { lj++; BEGIN(s1); ECHO;}
- <s0>{zero} { lz++; ECHO;}
- <s0>{nl} { printf(" Error\n"); BEGIN(INITIAL); }
- <s0>. { BEGIN(e); ECHO;}
- <s1>{jeden} { lj++; ECHO;}
- <s1>. { BEGIN(e); ECHO;}
- <s1>{nl} {
- if(lz == lj) { printf(" OK\n"); BEGIN(INITIAL); }
- else { printf(" Error\n"); lz = 0; lj = 0; }
- }
- <e>{nl} { printf(" Error\n"); lz = 0; lj = 0; BEGIN(INITIAL); }
- <e>. {ECHO;}
- %%
- zad 3
- %%
- [\n] {printf("\n");}
- [^A-Za-z0-9] {printf("-");}
- %%
- zad 4
- ws [\t ]
- %%
- [^\t\n ]{ws} {printf("%s", yytext);}
- {ws} {printf("");}
- %%
- zad 4a
- %{
- int sr = 0;
- %}
- %start s0
- us [\:\-\)]
- ne [\:\-\|]
- sm [\:\-\(]
- nl [\n]
- %%
- <INITIAL>{ne} {printf("%s", yytext); BEGIN INITIAL;}
- <INITIAL>{us} {printf("%s",yytext);sr++; BEGIN INITIAL;}
- <INITIAL>{sm} {printf("%s",yytext);sr--; BEGIN INITIAL;}
- <INITIAL>; {if(sr < 0) printf(" * :-("); else if(sr == 0) printf(" * :-|"); else printf(" * :-)"); sr=0; BEGIN INITIAL;}
- %%
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement