Overview
A standard feature of any desktop environment is a comprehensive calculator application. Typical desktop calculators offer various modes of operation, including basic arithmetic, scientific, financial, and computing/numerical systems. This desktop calculator is a greenfield project using Python and Qt for Python. It is especially well-suited for a freshman or sophomore, but it is not suitable at the graduate level.
One key component to the calculator will be learning to use Python's decimal library to get the expected results when adding 0.1 + 0.1 + 0.1. Since 0.1 cannot be represented exactly using a finite number of binary digits, roundoff error occurs when using standard floating-point numbers. Users do not expect to see these errors when using a basic calculator.