Как я могу включить троичные операторы в алгоритм набора приоритетов?
Я следовал объяснениям, данным в разделе «Восхождение по приоритетам» наэта веб-страница реализовать арифметический оценщик с использованием алгоритма набора приоритетов с различными унарными префиксами и бинарными инфиксными операторами. Я также хотел бы включить троичные операторы (а именно, тройной условный оператор?:
).
Алгоритм, приведенный на странице w, использует следующую грамматику:
E --> Exp(0)
Exp(p) --> P {B Exp(q)}
P --> U Exp(q) | "(" E ")" | v
B --> "+" | "-" | "*" |"/" | "^" | "||" | "&&" | "="
U --> "-"
Как я могу включить троичные операторы в эту грамматику?