TOKEN LEXEME VALUE ===== ====== ===== INT "int" ID "x" "x" LBRACK "[" NUM "10" 10 RBRACK "]" SEMI ";" VOID "void" ID "main" "main" LPAREN "(" VOID "void" ID "x" "x" COMMA "," INT "int" ID "y" "y" RPAREN ")" LBRACE "{" WHILE "while" LPAREN "(" ID "i" "i" LT "<" NUM "23" 23 RPAREN ")" LBRACE "{" ID "x" "x" LBRACK "[" ID "i" "i" RBRACK "]" ASSIGN "=" ID "input" "input" LPAREN "(" RPAREN ")" SEMI ";" ID "i" "i" ASSIGN "=" ID "i" "i" PLUS "+" NUM "1" 1 SEMI ";" RBRACE "}" IF "if" LPAREN "(" ID "i" "i" LTE "<=" ID "j" "j" RPAREN ")" INCREMENT "++" ID "i" "i" SEMI ";" ELSE "else" IF "if" LPAREN "(" ID "i" "i" GT ">" ID "j" "j" RPAREN ")" ID "i" "i" ASSIGN "=" NUM "5" 5 TIMES "*" ID "j" "j" DIVIDE "/" ID "k" "k" MINUS "-" NUM "1" 1 SEMI ";" ELSE "else" IF "if" LPAREN "(" ID "i" "i" GTE ">=" ID "j" "j" RPAREN ")" SEMI ";" ELSE "else" IF "if" LPAREN "(" ID "i" "i" EQ "==" ID "j" "j" RPAREN ")" SEMI ";" ELSE "else" IF "if" LPAREN "(" ID "i" "i" NEQ "!=" ID "j" "j" RPAREN ")" SEMI ";" ID "not" "not" ID "in" "in" ID "comment" "comment" TIMES "*" TIMES "*" DIVIDE "/" ERROR "&" Line: 25; Column: 3 ID "error" "error" ERROR ":" Line: 25; Column: 9 ID "for" "for" LPAREN "(" ID "i" "i" ASSIGN "=" NUM "5" 5 SEMI ";" ID "i" "i" GT ">" NUM "0" 0 SEMI ";" DECREMENT "--" ID "i" "i" RPAREN ")" ID "output" "output" LPAREN "(" ID "i" "i" RPAREN ")" SEMI ";" WHILE "while" NUM "123" 123 ASSIGN "=" NUM "2" 2 SEMI ";" RETURN "return" NUM "0" 0 SEMI ";" RBRACE "}" END_OF_FILE ""