cs_battouta
Messages postés1Date d'inscriptionmardi 29 mars 2005StatutMembreDernière intervention29 mars 2005
-
29 mars 2005 à 14:40
magic_Nono
Messages postés1878Date d'inscriptionjeudi 16 octobre 2003StatutMembreDernière intervention16 mars 2011
-
29 mars 2005 à 15:28
bonjour
le probleme c d'ecrire un prg en C qui reconnait des lexemes
ilfaut faire un automate pour chaque lexemes puis les reunir en un algorithme apres faire une traduction
je suis un etudiant et j'aimerais que vous m'aidiez
<DD>Ecrire analyseur lexical qui reconnait les lexèmes suivants :
<TT>ENTIER</TT> : un nombre entier
<TT>REEL</TT> : un nombre réél
<TT>CHAINE</TT> : une chaîne de caractères entre guillemets
<TT>IDENTIFICATEUR</TT> : un identificateur type langage C
<TT>COMMENTAIRE</TT> : un commentaire est une ligne commençant par #
<TT>IF</TT> : le mot réservé <TT>if</TT>
<TT>ELSE</TT> : le mot réservé <TT>else</TT>
<TT>WHILE</TT> : le mot réservé <TT>while</TT>
L'analyseur devra afficher, pour chaque lexème, son type et sa valeur. Les messages d'erreurs seront envoyés sur <TT>stderr</TT>.
Par exemple, si le fichier en entrée est le suivant : "ce fichier contient 8 lignes"
-2.3 5.6e8 +4.2 4
-.1e2 2.3er
ident truc1 x1 1x
"rigolo" #commentaire
"ah ah chaine non terminee
-t
if machin while pif
#fin
l'analyseur devra indiquer CHAINE : ce fichier contient 8 lignes
REEL : -2.300000
REEL : 560000000.000000
REEL : 4.200000
ENTIER : 4
REEL : -10.000000
IDENT : r
IDENT : ident
IDENT : truc1
IDENT : x1
ENTIER : 1
IDENT : x
CHAINE : rigolo
COMMENT: on ignore
IDENT : t
MCLEF : if
IDENT : machin
MCLEF : while
IDENT : pif
COMMENT: on ignore
et le fichier contenant les messages d'erreurs contiendra 2.3e *** ligne 3 *** exposant attendu
"ah ah chaine non terminee *** ligne 6 *** fin de chaine attendue
- *** ligne 7 *** nombre attendu