Skip to content

Commit b8e8dbc

Browse files
Update README.md
1 parent b54c9a2 commit b8e8dbc

File tree

1 file changed

+94
-1
lines changed

1 file changed

+94
-1
lines changed

README.md

Lines changed: 94 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,95 @@
1-
# StackMathGenerator
1+
# Stack Math Generator
22
Generate Stack Math puzzles with this handy utility written in Visual Basic
3+
4+
## What is a Stack Math Puzzle?
5+
Stack Math consists of a vertical list of numbers and a target number. Starting at the top of the list, your goal is to get the list of numbers to equal the target number using the 4 basic operators +, -, *, and /. However, you must __IGNORE ORDER OF OPERATIONS__ and instead go in the order of the stack. Consider the following puzzle:
6+
7+
|Stack|Target Number |
8+
|:---|:---:|
9+
|5<br/>6<br/>8<br/>1<br/>8<br/>4 | 68 |
10+
11+
The answer is -++*+, because:
12+
* 5 - 6 = -1
13+
* -1 + 8 = 7
14+
* 7 + 1 = 8
15+
* 8 * 8 = 64
16+
* 64 + 4 = 68
17+
18+
You see how the solution reads like a stack, hence the name "Stack Math"
19+
20+
<br/>
21+
22+
## How to use Stack Math Generator
23+
Stack Math Generator has 2 modes of operation
24+
* __Basic Mode__ - Select from 5 levels of difficulty, with the parameters already set
25+
* __Advanced More__ - Set your own parameters
26+
27+
Click "Generate Puzzle" to generate a random puzzle. Or, using the date picker, seed the puzzle generator with a custom date to generate a daily puzzle. To do this, select the desired date, then click "Seed."
28+
29+
Once the puzzle is generated, the program displays the stack and the target number. Check "Show Answer" to reveal the answer for the current puzzle (__No Cheating!__). Or, you can copy the puzzle to the clipboard.
30+
31+
Finally, Stack Math Generator has a Solver utility that allows you to find the solution to a given puzzle.
32+
33+
<br/>
34+
35+
## Basic Mode
36+
In every mode, the stack numbers range from 1 to 9, and there is only 1 solution to each puzzle. Here is a more detailed description for each of the following difficulty levels:
37+
* __Easy__ - 4 numbers with the target from 1 to 50
38+
* __Normal__ - 5 numbers with the target from 1 to 100
39+
* __Intermediate__ - 6 numbers with the target from 1 to 250
40+
* __Advanced__ - 7 numbers with the target from 1 to 500
41+
* __Expert__ - 9 numbers with the target from 1 to 1000
42+
43+
<br/>
44+
45+
## Advanced Mode
46+
Advanced Mode has 2 ways to generate the numbers stack
47+
* __Random Stack__ - Computer generates the number on the stack
48+
* __Custom Stack__ - You decide what numbers go on the stack
49+
50+
After the numbers are on the stack, the computer generates the actual puzzle. (*see Puzzle Generation*)
51+
52+
### Random Stack
53+
This option has 2 parameters that you can modify when generating a stack:
54+
* __Size__ - How many numbers are in the stack
55+
* __Range__ - What is the range for each number in the stack
56+
57+
### Custom Stack
58+
This option allows you to specify which numbers go on the stack.
59+
* To add a number onto the stack, type the number into the number picker and click "Add"
60+
* To remove a number from the stack, click on the number inside the stack and click "Remove"
61+
* To modify an existing number, click on that number inside the stack and click "Update"
62+
* To change the order of numbers on the stack, click on the number to move and use the up and down arrows to move the number up or down
63+
* Click "Clear Stack" to remove all numbers from the stack
64+
65+
### Puzzle Generation
66+
When generating the puzzle, there are a few parameters you can modify to specify what type of puzzle you want:
67+
* __Target__ - Specify the range for the target number
68+
* __Solutions__ - How many unique solutions should there be for a given puzzle
69+
* __Choose Target__ - If selected, Stack Math Generator pulls up a dialog that shows all generated puzzles that meet the above criteria (*see Choose Target*)
70+
71+
<br/>
72+
73+
## Choose Target
74+
This dialog displays all generated puzzles that meet the parameters specified under Puzzle Generation. The list shows the target number of each puzzle and the number of solutions for that target number. Double click on a puzzle to place a check mark next to it. Clicking "Pick Selected" will randomly pick a puzzle from all checked puzzles. Use "Select All" to put a check mark next to all puzzles, or "Deselect All" to remove all checkmarks. Checking "Show Answer" will show the solution for the selected puzzle.
75+
76+
<br/>
77+
78+
## Solver
79+
Adding numbers to the solver stack is exactly the same as adding numbers to the custom stack.
80+
* To add a number onto the stack, type the number into the number picker and click "Add"
81+
* To remove a number from the stack, click on the number inside the stack and click "Remove"
82+
* To modify an existing number, click on that number inside the stack and click "Update"
83+
* To change the order of numbers on the stack, click on the number to move and use the up and down arrows to move the number up or down
84+
* Click "Clear Input" to remove all numbers from the stack and clear the Target Number
85+
86+
After you input the stack, type the target number, then click solve. All solutions for the given puzzle will appear in the box on the right. You can optionally copy all of these solutions to the clipboard
87+
88+
<br/>
89+
90+
----
91+
92+
<br/>
93+
94+
## Other Notes
95+
Stack Math was invented for Mrs. Glaze, my math teacher at Pike High School. If you have her Pre-Calculus class, be sure to ask her about it. I used this utility to generate a TON of puzzles for her.

0 commit comments

Comments
 (0)