Students are tasked with the implementation of a system that evaluates simple arithmetic expressions in some programming language, using the recursive descent parsing approach. Also, the calculator program should handle some expression errors.
1. The students will hone their programming skills 2. They will gain a better understanding of recursion 3. They will be introduced to the concept of parsing, as well as some introductory parsing algorithms 4. They will need to practice error reporting (which is usually ignored in introductory classes)
This problem is directed towards first year computer engineering students and could be assigned in an introductory programming or data structures course. It shouldn't be one of the first assignments in an introductory programming course as intermediate concepts such as recursion are required.