Personal project to develop and design a calculator application that looks and functions like the classic on-screen calculator used on the Quantitative Measures section of the Graduate Records Examinations (GRE).
The Quantitative Measures section of the GRE is taken on a computer, and the only legal calculator allowed for use during this section of the exam is an on-screen calculator provided as part of the GRE software. In some current versions of the GRE, this on-screen calculator has been reworked to have a fresh look and appearance. However, other versions of the GRE still rely on the classic calculator program, as displayed in the following image:
In addition to the appearance, several 'functions' of the classic calculator take some getting used to, and can be a hurdle while otherwise focusing on exam preparation.
At the time of this project, the only known ways to access this particular calculator and practice using it were by:
- using the two free sample exams available through POWERPREP.
- purchasing additional practice exams through POWERPREP.
- purchasing a mock practice exam through Magoosh.
- purchasing and actively taking the actual GRE from ETS.
The goal of this project was to create a tool that could replicate the look, feel, and function of the 'classic' calculator to be openly available, such that the calculator could be installed and utilized outside of the GRE, POWERPREP practice exams, or Magoosh mock exams.
Note: This tool only supports the Windows platform at the moment.
- Kivy: a Python framework for developing user interface applications
To get a local copy up and running follow these simple steps.
In order to use the GRE Calculator, you must first have Python and pip installed on your system. If you need assistance installing these prerequisites, see the folowing steps:
-
Python is a programming language. The majority of this project's code base is written in Python. Download the latest version of Python and install onto your local machine.
-
Pip is the package installer for Python. Once Python is installed, open your local machine's command line and use the following command to utilize Python to install Pip:
python get-pip.py -g
- Git is a version control system. In this project, Git is used to clone (copy) the most up-to-date project files from GitHub to your local machine. Download the latest version of git and install on your local machine.
-
Open the command line on your local machine.
-
Enter the following command to use Git to clone this repository to your local machine.
git clone https://github.com/asa-holland/GRE-calculator.git
- Enter the following command to use Pip to install this repository's dependencies.
pip install -r requirements.txt
Run the GRE Calculator by opening command line, navigating to the installation folder and running:
python main.py
The GRE Calculator can be used with all standard calculator functions, as well as:
- "MR" (Memory Recall), "MC" (Memory Clear) and "M+" (Memory Addition) buttons can be used to recall and store a number from the GRE Calculator memory, or clear the memory of any existing values.
- "C" (clear) and "CE" (clear entry) buttons to clear all input to the GRE Calculator and clear the last character or operation inputted into the GRE Calculator.
In addition, the following 'features' have been added to match the feel and function of the Classic GRE Calculator:
- Digits and mathematical operations input using the user's keyboard do not enter onto the GRE Calculator display, only on-screen clicks of the GRE Calculator app provide input.
- Display view of the GRE Calculator only displays 7 digits. If a number is evaluated that contains greater than 7 digits, the GRE Calculator will crash and display an output ERROR.
- The GRE Calculator always remains the top window and cannot be minimized.
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Asa LeHolland - @AsaHolland404 - [email protected]
Project Link: https://github.com/asa-leholland/GRE-calculator
- YashKhandelwal8 from GeeksForGeeks wrote a nice article on building basic calculator functions from scratch using Kivy. This project derives initial functions from this article.
- Jakub Bláha wrote the KivyOnTop repository on GitHub. This was shamelessly copied and incorporated into this project to keep the GRE Calculator window above those of all other applications.
- othneildrew for creating the template README file that was used as the starting point for the README for this project.