%{
int vowel_count = 0;
int consonant_count = 0;
%}
%%
[a-zA-Z] {
if (strchr("aeiouAEIOU", yytext[0]))
++vowel_count;
else
++consonant_count;
}
. ; /* Ignore all other characters */
\n {
printf("Vowels: %d\n", vowel_count);
printf("Consonants: %d\n", consonant_count);
vowel_count = 0;
consonant_count = 0;
}
%%
int main() {
yylex();
return 0;
}
JXsKaW50IHZvd2VsX2NvdW50ID0gMDsKaW50IGNvbnNvbmFudF9jb3VudCA9IDA7CiV9CgolJQpbYS16QS1aXSAgICB7CiAgICAgICAgICAgICAgICBpZiAoc3RyY2hyKCJhZWlvdUFFSU9VIiwgeXl0ZXh0WzBdKSkKICAgICAgICAgICAgICAgICAgICArK3Zvd2VsX2NvdW50OwogICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICsrY29uc29uYW50X2NvdW50OwogICAgICAgICAgICB9Ci4gICAgICAgICAgIDsgLyogSWdub3JlIGFsbCBvdGhlciBjaGFyYWN0ZXJzICovClxuICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHByaW50ZigiVm93ZWxzOiAlZFxuIiwgdm93ZWxfY291bnQpOwogICAgICAgICAgICAgICAgcHJpbnRmKCJDb25zb25hbnRzOiAlZFxuIiwgY29uc29uYW50X2NvdW50KTsKICAgICAgICAgICAgICAgIHZvd2VsX2NvdW50ID0gMDsKICAgICAgICAgICAgICAgIGNvbnNvbmFudF9jb3VudCA9IDA7CiAgICAgICAgICAgIH0KJSUKCmludCBtYWluKCkgewogICAgeXlsZXgoKTsKICAgIHJldHVybiAwOwp9Cg==