Ybadoo - Soluções em Software Livre
Tutoriais
Compiladores

Apresente os conjuntos FIRST e FOLLOW das variáveis da gramática a seguir.

G = ({S, A, B, C, D}, {a, b, c, d}, P, S)
P = {S → aBC | CcD
A → dS | BDb
BCa | bAd
C → c | ε
D → ε | Cd}

 

FIRST(S) = {a, c}
FIRST(A) = {a, b, c, d}
FIRST(B) = {a, b, c}
FIRST(C) = {c, ε}
FIRST(D) = {c, d, ε}
FOLLOW(S) = {d, $}
FOLLOW(A) = {d}
FOLLOW(B) = {b, c, d, $}
FOLLOW(C) = {a, c, d, $}
FOLLOW(D) = {b, d, $}