Analyseur syntaxique dirigé par table

Fermé
nawwal123 Messages postés 1 Date d'inscription dimanche 25 décembre 2016 Statut Membre Dernière intervention 25 décembre 2016 - Modifié par nawwal123 le 28/12/2016 à 18:12
mamiemando Messages postés 33387 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 27 novembre 2024 - 10 janv. 2017 à 10:26
Bonjour ,j'ai un petit projet que je n'arrive pas a le resoudre svp
le principe de ce projet est de realiser un analyseur sinyaxique avec la methde descendante dirigé par table pour une grammaire d'expressions logique
la grammaire LL(1) donner pour ce language est :
Exp0->Expl$
Expl-> Terme Expl1
Expl1-> ou Terme Expl1| Ɛ
Terme-> Facteur Terme1
Terme1-> et Facteur Terme| Ɛ
Facteur -> (Expl) |non Facteur |vrai|faux
j'ai realiser un analyseur lexical avec Flex pour cette grammire :
%{
#include<stdio.h>
#define VRAI 300
#define FAUX 301
#define ET 302
#define OU 303
#define NON 304
%}

%%
et return ET ;
ou return OU;
faux return FAUX ;
vrai return VRAI ;
non return NON ;
"\n" |
"(" |
")" |
"$" return yytext[0];
[ \t] ;
<<EOF>> return 0 ;
%%
je n'arrive pas a implementé cette grammaire en C ,j'attent vos aide svp
A voir également:

1 réponse

mamiemando Messages postés 33387 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 27 novembre 2024 7 803
10 janv. 2017 à 10:26
Bonjour,

Pour commencer, je t'invite à lire un cours sur lex et yacc si tu n'es pas familier de ces outils :
http://www.linux-france.org/article/devl/lexyacc/

Ensuite, pourquoi ne pas repartir d'un exemple, que tu modifierais progressivement pour arriver à la grammaire que tu considère ?
http://www.linux-france.org/article/devl/lexyacc/minimanlexyacc-4.html

Bonne chance
0