Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Write a BNF description of the precedence and associativity rules defined for th

ID: 3766505 • Letter: W

Question

Write a BNF description of the precedence and associativity rules defined for the expressions

i) a * (b – 1) / c mod d

and

iii) a > b xor c or d <= 17 . Assume the only operands are the names a, b, c, d, and e. consedring the grammer

                    <expression> --> <expression> or <or_exp> | < expression > xor <or_exp> | <or_exp>

                     <or_exp> --> <or_exp> and <and_exp> | <and_exp>

< and_exp > --> <and_exp> = <expr> | <and_exp /= <expr> | <and_exp> < <expr> | <and_exp> <= <expr> | <and_exp> >= <expr> | <and_exp> > <expr> | <expr>

<expr> --> - <unary_expr> | <unary_expr>

<unary_expr> --> <unary_expr> + <term> | <unary_expr> - <term> | <unary_expr> & <term> | <unary_expr> mod < term> | <term>

< term > --> < term > * < factor > | < term > / < factor > | not < factor > | < factor >

< factor > --> ( < expr > ) | <operand>

<operand> --> a | b | c | d | e

Explanation / Answer

a*(b-1)/c mod d -->((a*(b-1)1)2/c)3mod d)4

a>b xor c or d<=17 -->(((a>b)1 xor c) 3 or(d<=17)2)4

Precedence: Highest *, /, not
+, -, &, mod
- (unary)
=, /=, <, <=, >=, >
and
Lowest or, xor
Associativity: Left to right
<expr> <expr> or <e1> | <expr> xor <e1> | <e1>

<e1> <e1> and <e2> | <e2>

<e2> <e2> = <e3> | <e2> /= <e3> | <e2> < <e3>

| <e2> <= <e3> | <e2> > <e3> | <e2> >= <e3> | <e3>

<e3> <e4>

<e4> <e4> + <e5> | <e4> – <e5> | <e4> & <e5> | <e4> mod <e5> | <e5>

<e5> <e5> * <e6> | <e5> / <e6> | not <e5> | <e6>

<e6> a | b | c | d | e | const | ( <expr> )

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote