Grammaire pour un analyseur syntaxique - C - Programmation
MarshPosté le 23-04-2013 à 01:29:39
Bonsoir, Je suis entrain d'implémenter un analyseur syntaxique qui permet de calculer des opérations arithmétique:+,-,*,/. [B]note[/B]:+,- ont la même priorité *,/ ont la même priorité On accepte les parenthèses
Voici ma grammaire: E → T E0 E0 → + T E0 E0 → - T E0 E0 → є {E0.valeur:=0} T → F T0 T0 → * F T0 T0 → / F T0 T0 → є{T0.valeur:=0} F → ( E ){F.valeur:=E.valeur} F → 0 {F.valeur:=0} F → 1{F.valeur:=1} F → 2{F.valeur:=2} F → 3{F.valeur:=3} F → 4{F.valeur:=4} F → 5{F.valeur:=5} F → 6{F.valeur:=6} F → 7{F.valeur:=7} F → 8{F.valeur:=8} F → 9{F.valeur:=9}
Je besoin de votre aide pour donner au reste des non-terminaux une valeur "non-terminal.valeur" . merci d'avance
Marsh Posté le 23-04-2013 à 01:29:39
Bonsoir,
Je suis entrain d'implémenter un analyseur syntaxique qui permet de calculer des opérations arithmétique:+,-,*,/.
[B]note[/B]:+,- ont la même priorité
*,/ ont la même priorité
On accepte les parenthèses
Voici ma grammaire:
E → T E0
E0 → + T E0
E0 → - T E0
E0 → є {E0.valeur:=0}
T → F T0
T0 → * F T0
T0 → / F T0
T0 → є{T0.valeur:=0}
F → ( E ){F.valeur:=E.valeur}
F → 0 {F.valeur:=0}
F → 1{F.valeur:=1}
F → 2{F.valeur:=2}
F → 3{F.valeur:=3}
F → 4{F.valeur:=4}
F → 5{F.valeur:=5}
F → 6{F.valeur:=6}
F → 7{F.valeur:=7}
F → 8{F.valeur:=8}
F → 9{F.valeur:=9}
Je besoin de votre aide pour donner au reste des non-terminaux une valeur "non-terminal.valeur" .
merci d'avance