MathSprint is a simple timed math quiz built with HTML, JS, and CSS. It can be used as a math practice or just as a casually competitive game.
⚠️ This README contains mathematical expressions that may not be visible in dark mode. Switch to light mode in your user settings to see them.
The game is simple, you press start and try to answer 10 simple math questions as quickly as possible.
The questions are randomly generated each time, and they cover addition, subtraction, and multplication. You do not have to answer the questions in sequence.
As you do the quiz, a timer keeps track of the time you have taken.
After answering all the questions, submit your answers and your results will be shown.
All questions are simple binary arithmetic expressions.
Only the addition, subtraction and multiplication operators are used in the questions. This greatly reduces the difficulty of the game and allows players of all ages.
Currently, only integers from 0 to 10 are used as operands. This also serves to reduce the difficulty of the game.
MathSprint is built to work on all devices with different screen sizes.
These are the features I plan to add to MathSprint in the future.
Add a settings screen on the cover page to let players adjust their preferred difficulty. The difficulty can be controlled using several aspects.
Operators of higher complexity can be used. This includes, in increasing difficulty:
The range of operands can be increased beyond the current ranged used.
Longer mathematical expressions can be used. The current implementation only uses a single binary expression. Longer expressions requires more calculations and the knowledge of the mathematical order of operations:
The current implementation generates incorrect answers by random selecting numbers from the range for each correct answer .
A better method of generating wrong answers is to slightly modify the operands of the questions and setting the answer to the modified expression as an incorrect option.
For example, given an expression
The wrong answers can be generated as
This better simulates calculation errors in real life.