Está en la página 1de 2

1.

Construya un árbol sintáctico con anotaciones para las siguientes expresiones:


a. 8+2/2+6*3+4

Según la definición dirigida por la sintaxis siguiente:

PRODUCCIÓN REGLAS SEMANTICAS


L → En Print (E.val)
E → E1 + T E.val:= E1.val+T.val
E → E1 - T E.val:=E1.val-T.val
E→T E.val:= T.val
T → T1* F T.val:= T1.val*F.val
T → T1 / F T.val:= T1.val/F.val
T→F Tval:= F.val
F → (E) F.val:= E.val
F → Digito F.val:= Digito.valex

2/2=1 L

6*4=18
E.VAL = 31
8+1=9

9+18=27 +
E.VAL = 27 T1.VAL = 4
27+4=31

E.VAL = 9 + F.VAL = 4
T2.VAL = 18

+ DIGITO.VALEX
E.VAL = 8 T.VAL = 1 F.VAL = 2

F.VAL = 8 / F.VAL = 2DIGITO.VALEX


T.VAL = 2

DIGITO.VALEX
F.VAL = 2 F.VAL = 2

DIGITO.VALEX
DIGITO.VALEX
2. Diseñe el árbol de análisis sintáctico para las siguientes expresiones:
a. 9 + 7 * 4 - a/b

Utilice apuntadores y desarrolle las reglas o pasos con apuntadores para realizar
dicho árbol.

También podría gustarte