Two-Minute Math is a PyQt6 practice game designed for 2nd graders to improve their math fluency.
It generates random math problems (addition, subtraction, multiplication, and division) and can be played in timed or untimed mode.
At the end of a session, the program shows performance statistics and allows reviewing missed problems.
- Generates 40 random math problems each session.
- Supports:
- Timed mode (countdown from 2 minutes).
- Untimed mode (count-up).
- Instant feedback after each answer:
- โ Correct answers (silvwe).
- โ Wrong answers (red).
- โญ Skipped problems (silver).
- Difficulty levels:
- โโ Addition & Subtraction
- โ๏ธ Multiple
- โ Divide
- End-of-game summary:
- Accuracy (% correct).
- Time taken & split time between each problem.
- Review of missed problems.
- Python 3.9+
- PyQt6
Install dependencies with:
pip install PyQt6Choose difficulty (Easy / Medium / Hard).
Select timed or untimed mode.
Solve as many problems as you can.
Enter your answer and press Submit.
Or press Skip to move to the next problem.
At the end:
Review your score, accuracy, and missed problems.
Colors for correct, wrong, and skipped answers can be customized in the source (QColor definitions).
Default game width/height and fonts can also be adjusted in the code.

A specific math problem being solved.
This project is licensed under the BSD 3-Clause License. See the LICENSE file for details.
The primary goal of this project is to help my kiddo with second grade math. His class needs to be able to solve 40 problems in two minutes. This game makes it easy to practice.
