Calculator is a Desktop application written in C++ that can deal with various types of numbers: integer, real, rational, complex and even literal expressions.
It is based on the Reverse Polnish Notation and has some nice features such as a whole Undo/Redo system. It is also a cross-platform app thanks to the Qt framework.
This project was a way for us students to learn how to design a fairly complex object-oriented program with a clean architecture, and to implement this design using a famous framework based on C++. It was the final task of the Introduction to objet-oriented programming and design class.