Compiler_Operators_Analyzer

C Program that analyzes and calculate addition, subtraction,multiplication and division expressions with 1 or more digits.

Grammar:

E -> T {E1.h = T.val} E1 {Eval = E1.s}
E1 -> +T {E2.h = E1.h + Tval} E2 {E1.s = E2.s}
E1 -> -T {E2.h = E1.h - Tval} E2 {E1.s = E2.s}
E1 -> empty {E1.s = E1.h}

T -> F {T1.h = F.val} T1 {Tval = T1.s}
T1 -> *F {T2.h = T1.h + Fval} T2 {T1.s = T2.s}
T1 -> /F {T2.h = T1.h - Fval} T2 {T1.s = T2.s}
T1 -> empty {T1.s = T1.h}

F -> (E) {Fval = Eval}
F -> D {Fval = Dval}

D -> d {d1val = d} D1 {dval = d1val}
D1 -> d {d1val = d2val = d1val*10 + d} D2 {d1val = d2val}
D1 -> empty