Software calculator implementation

Affiliation: University of Thessaly
Resolution: Individual | Duration: Two to four hours

Overview


Goals

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.

Learning Objectives

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)

Context

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.