PUERTA | PUERTA-CS-2003 | Pregunta 58

Considere el esquema de traducción que se muestra a continuación

S → T R
R → + T {print ('+');} R | ε
T → num {print (num.val);} 

Aquí num es un token que representa un número entero y num.val representa el valor entero correspondiente. Para una string de entrada ‘9 + 5 + 2’, este esquema de traducción imprimirá
(A) 9 + 5 + 2
(B) 9 5 + 2 +
(C) 9 5 2 + +
(D) + + 9 5 2

Respuesta : (B)
Explicación: Hagamos el árbol de análisis sintáctico para 9+5+2 de arriba hacia abajo, primera derivación a la izquierda.

Steps:
1) Expand S->TR
2) apply T->Num...
3) apply R -> +T...
4) appy T->Num...
5) apply R-> +T..
6) apply T-> Num..
7) apply R-> epsilon 

Después de imprimir a través de la declaración de impresión en el árbol de análisis formado, obtendrá la respuesta como 95+2+
Cuestionario de esta pregunta

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *