CS 331, Spring 2008 Assignment #3: 10 points Date Due: Friday, 2/15/08. Read Sections 3.1-3.3 of Sebesta. (1) 1. Identify all lexemes present in the following C statement: if ( X > 0 ) YtimesX *= X ; (2) 2. Using the grammar in Example 3.3, show a parse tree and a leftmost derivation for the statement: B = C * A + B Is this the only possible parse tree? Why? (2) 3. Problem 3.8. (2) 4. Problem 3.12. Draw the parse tree for each string in the language. (2) 5. Using the grammar in Example 3.4, show a parse tree and a leftmost derivation for the statement: A = B * C + A Is this the only possible parse tree? Why? (1) 6. Associativity determines the order of evaluation when there are multiple occurrences of the same operator or operators of equal precedence. For example, A+B+C may be evaluated from left to right or right to left, and the algebraic result is the same in both cases for normal arithmetic addition. Identify a binary operator in C++ which produces different results for left associative and right associative evaluation. What is the conventional associativity (left or right) for the operator?