Théorie des langages : Td6 analyse lexicale
Télécharger PDFNF11 – TD6
Analyse lexicale E
xercice 1
Les entités lexicales d’un mini-langage de programmation sont les suivantes : •Mots clés : begin, end, if, then, else
•Identificateurs: chaînes composées d’une lettre suivie de zéro ou plusieurs lettres ou
chiffres. •Constantes : chaînes composées d’un chiffre suivi de zéro ou plusieurs chiffres.
•Opérateurs : <, >, =, <>, <=, >=, +, -
1. Donner les expressions régulières qui décrivent ces entités lexicales
2. Construire un automate fini déterministe pour ces expressions régulières.
62.85 -0.45 +123.56E-25
Exercice 2Exemples de constantes réelles signées : 1. Construire un automate d’états fini déterministe qui accepte ce type de constantes.
2. Ecrire un algorithme d’analyse lexicale reconnaissant ces constantes.
Exercice 3Un langage L défini sur l’alphabet {A, B, C, ..., Z} est composé de mots présentant les caractéristiques suivantes : •Les consonnes sont séparées par des voyelles (pas de consonnes consécutives).
•Plusieurs voyelles (au maximum 3) peuvent se suivre.
•Un mot ne peut pas commencer et se terminer par une même consonne.
•La longueur d’un mot est comprise entre 2 et 8 inclus.
1. Ecrire les expressions régulières qui décrivent les mots du langage
2. Ecrire un programme d’analyse lexicale en vous aidant d’un automate.