Td1 pdf Correction TD de Traduction no Licence d ? informatique ?? - ?? Introduction a l ? analyse lexicale Le but de ce TD est d ? ?ecrire des expressions r ?egulieres caract ?erisant certains lexemes puis d ? ?ecrire le programme flex correspondant Exer
Correction TD de Traduction no Licence d ? informatique ?? - ?? Introduction a l ? analyse lexicale Le but de ce TD est d ? ?ecrire des expressions r ?egulieres caract ?erisant certains lexemes puis d ? ?ecrire le programme flex correspondant Exercice Expressions r ?egulieres E ?crire des expressions r ?eguli eres pour reconna tre les identi ?cateurs du C commencent par une lettre ou un puis une suite de chi ?res lettres ou les cha nes de caracteres du Pascal ? ? avec ? ? pour faire une apostrophe les cha nes de caracteres du C les commentaires du C et les entiers d ?ecimal hexad ?ecimal x et octal les ottants avec exposant ? LETTRE LETTRE CHIFFRE ? ? ? ? NON-APOSTROPHE ? ? CARACTERE NON-GUILLEMET ? ?? NON-ETOILE NI- SLASH-NI-ETOILE ? ? Dire que l ? expression r ?eguliere n ? est pas la bonne solution et qu ? il faut utilisera la place les start- conditions ?? NON-RETOUR-CHARIOT ? ?? d ?ecimal - - ? ?? hexad ?ecimal x - A-Fa-f - A-Fa-f ? ?? octal - - ? ?? - - ? - ? ?? - - ? ?? e- - - ? e - - - ? ? CExercice Analyse d ? un programme ex Que fait le programme ex suivant printf printf n printf printf printf printf yyleng int main yylex return ? Ce programme ?? remplace les s ?equences et par et ?? remplace les s ?equences constitu ?ees des caracteres et n par ASN ?? remplace toute occurrence d ? un des caracteres ou par ?? remplace toute occurrence d ? un des caracteres ou par PF ?? remplace toute s ?equence de points d ? interrogation par une s ?equence N ou N repr ?esente le nombre de points d ? interrogation de la s ?equence lue ?? supprime tous les autres caracteres car ils sont lus sans que rien ne soit produit en sortie Exercice E ?criture d ? un programme flex Transposer en flex les expressions r ?egulieres du premier exercice ? Penser arappeler que les espaces ont une signi ?cation pr ?ecise en flex et qu ? ils ne peuvent pas etre utilis ?es pour a ?erer la pr ?esentation du code Pr ?esenter la possibilit ?e d ? utiliser des variables comme LETTRE et dire a quoi correspondent les variables pr ?ed ?e ?nies yytext et yyleng ? C rappel toujours au moins un espace avant du C par exemple des commentaires rappel bien sauver un programme ex avec des retours chariot style Unix LETTRE a-zA-Z CHIFFRE - LETTRE LETTRE CHIFFRE printf ID s n yytext ? ? ? ? ? printf chaine pascal s n yytext printf chaine C s n yytext printf commentaire C s n yytext - CHIFFRE printf entier decimal s n yytext x a-fA-F CHIFFRE printf entier hexadecimal s n yytext - printf entier octal s n yytext - CHIFFRE CHIFFRE printf ottant s n yytext CHIFFRE printf ottant
Documents similaires










-
38
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Sep 21, 2022
- Catégorie Creative Arts / Ar...
- Langue French
- Taille du fichier 53.6kB