TP FLEX (Compilation)
Exercice 1
Écrivez un programme Flex qui reconnaît les nombres entiers positifs et affiche "Entier positif" lorsqu'il
en trouve un.
%{
#include <stdio.h>
%}
%%
[0-9]+ { printf("Entier positif : %s\n", yytext); }
. ; // Ignorer les autres caractères
%%
int main() {
yylex();
return 0;
}
Exercice 2
Écrivez un programme Flex qui reconnaît les opérateurs arithmétiques (+, -, *, /) et affiche "Opérateur"
lorsqu'il en trouve un.
%{
#include <stdio.h>
%}
%%
[+\-*/] { printf("Opérateur : %s\n", yytext); }
. ; // Ignorer les autres caractères
%%
int main() {
yylex();
return 0;
}
Exercice 3
Écrivez un programme Flex qui reconnaît les identificateurs en commençant par une lettre majuscule
suivie de lettres minuscules et/ou de chiffres et affiche "Identificateur valide" lorsqu'il en trouve un.
Exercice 4
Écrivez un programme Flex qui reconnaît les chaînes de caractères entourées de guillemets doubles ("
") et affiche "Chaîne de caractères" lorsqu'il en trouve une.
Exercice 5
Écrivez un programme Flex qui reconnaît les commentaires C++ commençant par // et affiche
"Commentaire C++" lorsqu'il en trouve un.
Exercice 6
Écrivez un programme Flex qui reconnaît les adresses email et affiche "Adresse email valide" lorsqu'il
en trouve une.
Exercice 7
Écrivez un programme Flex qui reconnaît les nombres réels (avec ou sans partie fractionnaire) et affiche
"Nombre réel" lorsqu'il en trouve un.
Exercice 8
Écrivez un programme Flex qui reconnaît les dates au format JJ/MM/AAAA et affiche "Date valide"
lorsqu'il en trouve une.
Exercice 9
Écrivez un programme Flex qui reconnaît les adresses IPv4 et affiche "Adresse IPv4 valide" lorsqu'il en
trouve une.
Exercice 10
Écrivez un programme Flex qui reconnaît les mots-clés du langage de programmation que vous préférez
(par exemple, if, else, while, for, etc.) et affiche "Mot-clé" lorsqu'il en trouve un.