Create basic addition, subtraction, multiplication and division practice questions with the answer sheet

You must be signed in to change notification settings

# januschung/math-worksheet-generator

## Folders and files

NameName
Last commit message
Last commit date

# Math Worksheet Generator

## Background

My best friend tests his 5 year old basic math questions from store-bought material which is good for one time use (his son memorizes the answers) …. but he wants to give him more practice.

Two solutions:

1. keep buying more one time usage materials (less beer budget); or
2. make question sets with the number pairs and calculate the answer for each question manually (less beer time)

Not ideal.

That's the reason for me to look into an automate way to get the job done.

## Benefit of the Math Worksheet Generator

With the Math Worksheet Generator, you can create a PDF with unique questions, as needed, in a fraction of second.

There are five choices:

2. Subtraction
3. Multiplication
4. Division
5. Mixed

## Requirements

python3.11

Install required package with the following command:

``````pip install -r requirements.txt
``````

## How to Use

1. Generate the worksheet in pdf format with the following command:
``````python3 run.py --type [+|-|x|/|mix] --digits [1|2|3] [-q|--question_count] [int] --output [custom-name.pdf]
``````
1. Print out the generated file `worksheet.pdf`

``````python3 run.py --type +
``````

For calculation up to 3 digits range:

``````python3 run.py --digits 3
``````

For generating different number of question, eg. 100 (default is 80):

``````python3 run.py -q 100
``````

or

``````python3 run.py --question_count 100
``````

For custom output filename (default is worksheet.pdf):

``````python3 run.py --output custom-name.pdf
``````

sample worksheet

## Code Overview

Everything is written in python in `run.py`. You can play with the font and grid size with the variables under the `# Basic settings` section.

## Contributing

I appreciate all suggestions or PRs which will help kids learn math better. Feel free to fork the project and create a pull request with your idea.

## TODO

1. Add date/name/score section to the front page

## Special Thanks

My long time friend San for the inspiration of this project and lovely sons Tim and Hin. Thanks thedanimal for reviewing this README and adding new features.

Also, thank you for the love and support form the Reddit Python community. You guys are amazing and are helping me to make this project better.

## Successful Story

Thanks k1m0ch1 for sharing this heartwarming story:

...I made this card for my kid, and then the teacher asks me if I can make some for the kids, well its generated anyway and very helpful, and the next day he asks me to make for a whole class, and next day he wants me to make for a whole school, and a weeks later other schools want me to help to make for a whole school.
more than 1000 generated file, with a custom filename for every kid and sent to the email I'm doing it for free, while you made this free, love it <3

PyCoder's Weekly Issue #442

Github Trends Telegram

Create basic addition, subtraction, multiplication and division practice questions with the answer sheet

## Releases

No releases published

## Packages 0

No packages published