Documentos de Académico
Documentos de Profesional
Documentos de Cultura
i
}
formaSentencial/
A
,
con
0
T
*
,
A
0
N,
y 0 (N c T)
*
Si / entrada
Sentencia reconocida !
Retornar
Fin Si
AnlisisDescendenteConRetroceso(formaSentencial, entrada)
Si Sentencia reconocida ! Retornar Fin Si
Fin For
Fin AnlisisDescendenteConRetroceso
Y la llamada principal quedara:
AnlisisDescendenteConRetroceso(axiomaInicial, cadenaAReconocer)
Si NOT Sentencia reconocida !
Sentencia no reconocida !!
Fin Si
59
Anlisis sintctico
La tabla siguiente muestra la ejecucin de este algoritmo para reconocer o
rechazar la sentencia ( id + num ) * id + num. Se aplican siempre derivaciones a
izquierda, y la columna Pila de reglas utilizadas representa la rama del rbol
universal sobre la que se est trabajando. Se han representado en rojo los retrocesos.
Ntese como la tabla es mucho ms extensa de lo que aqu se ha representado, lo que
da una estimacin de la ineficiencia del algoritmo.
Forma sentencial Pila de reglas utilizadas
E 1
T+E 1-3
F * T +E 1-3-5
id * T + E 1-3
F * T +E 1-3-6
num * T + E 1-3
F * T +E 1-3-7
(E) * T +E 1-3-7-1
(T + E) * T + E 1-3-7-1-3
(F * T + E) * T + E 1-3-7-1-3-5
(id * T + E) * T + E 1-3-7-1-3
(F * T + E) * T + E 1-3-7-1-3-6
(num * T + E) * T + E 1-3-7-1-3
(F * T + E) * T + E 1-3-7-1-3-7
((E) * T + E) * T + E 1-3-7-1-3
(F * T + E) * T + E 1-3-7-1
(T + E) * T + E 1-3-7-1-4
(F + E) * T + E 1-3-7-1-4-5
(id + E) * T + E 1-3-7-1-4-5-1
(id + T + E) * T + E 1-3-7-1-4-5-1-3
(id + F * T + E) * T + E 1-3-7-1-4-5-1-3-5
(id + id * T + E) * T + E 1-3-7-1-4-5-1-3
(id + F * T + E) * T + E 1-3-7-1-4-5-1-3-6
(id + num * T + E) * T + E 1-3-7-1-4-5-1-3
(id + F * T + E) * T + E 1-3-7-1-4-5-1-3-7
(id + (E) * T + E) * T + E 1-3-7-1-4-5-1-3
(id + F * T + E) * T + E 1-3-7-1-4-5-1
(id + T + E) * T + E 1-3-7-1-4-5-1-4
(id + F + E) * T + E
....