This program does not check you work. It assumes that entries are correct! If you make a mistake, the program will give you bad data from that point on. Be careful! Coming soon, auto correction which can be turned on or off.

Rules: You are given a 9 X 9 cell puzzle with some of the cells (around 20 to 40 numbers) already filled in to start. These 9 X 9 cells are divided into 9 squares of 3 X 3 cells. This program outlines these squares in dark yellow filled with green. The program calls these given numbers the base numbers. They can not be changed (If you want to go ahead as this program does not care!). Your goal is to fill in the rest of the cells so that each one of the nine square contain a unique numbers, each row across three squares and each column down three squares must contain a unique number. Numbers are 1 through 9.

To start: Select "Set To A Easy Sudoku", "Set To A Medium Sudoku", "Set To A Hard Sudoku", "Set To A Challenger Sudoku", "Set To A Wicked Sudoku".
Or you may enter one you have from an other source and after verifying that the numbers match the source, click on the "Save Base Numbers" . The numbers will change from outlined in red to outlined in black.

So concentrate by: Looking in each of the squares of nine. Looking across each of the nine rows. Looking down each of the nine columns.

Learning to play: This program can help you to learn how to solve SUDOKU puzzles. To begin, it is best to turn on the 'Auto Scratch Pad'. This indicates which numbers are available to choose from. Later you may want to just use the 'User Scratch Pad' manually which will not verify your results. You may also want to use the 'Auto Scratch Pad' to get the base results and then use the 'Set User Scratch Pad to Auto Scratch Pad' to switch to the 'User Scratch Pad' which uses what the program calculates to start you out. When you get really good you can try it without the 'Scratch Pad'.

Repeat the following over and over again:

Look for the obvious: (After making a choice, always come back to the first step.)
First step: You are first looking for a box with only one number available to select. Select this number. Repeat this until there are no boxes with only one number in it.
Second step: Look for a box that is the only one with that number in it in the square it is in, or across or down) .
For example the selections that have not been made across the first row contains:
(4,5,7) (2,3,5) (2,3,7) (2,3,6,7) (3,4,7) (2,3,7) the other three contain a number.
You will notice that the numbers 2, 3, 4, 5 & 7 are in more than one but the '6' is in only one. Since a six is needed in every row, it is the value to select for the (2,3,6,7) group. After selecting the '6', go back to look for the first step.

Extra information (the program does give this information!): If N cells in a square or vertical column or horizontal column have the same number of choices and each contain the same N numbers for a choice, no other cells in that set can have that number..
If a number only exist in column or row of a square, in must be in that row or column in that square so it follows that it can not be in any other square for that column or row.
Example: in the Challenger Sudoku; At the point that it is no longer obvious, horizontally, the ninth square has a 1&2 in its first and third row of its second column, therefore the one may be eliminated from the third square in the same column, in rows 2 & 3. Unfortunately this does not help in this case. To see this, select Challenger: Auto Scratch Pad: Obvious from Previous Obvious: and Submit uses GREEN values:. Also if there had been any two in this column, they could have been eliminated. After eliminating the ones from the third square, you will notice that there are only two sixes in the third square and that they are both in the second row in two cells. So, the six has to be in the second row of the third square so it can not be in the second row of the first and second square. Unfortunately, this does not help either as there are no sixes there. You will be able to eliminate other values for cells using this method.

Extra information (the program does NOT give this information YET!): If 'ALL' N not determined cells on a vertical column or horizontal column in a square have only the N unique number for choices, no other square containing that column can have those number..

Third step: You are down to a point where you have to use combinations of group, row, column to see if a obvious solution is available. You may not be able to see this as it may take a lot of moves to get too. You may have to guess. If you are about to guess, you should "Save Current Play Numbers" A guess may lead to a counter-diction or an point where you have to make another guess. It is best to take a guess of a cell with only two choices as if it leads to a counter-diction, Use "Reset to Save Play Numbers" and take the other choice which should be valid. Go back up to the first step. If all choices for a cell lead to a dead end, you may want to use "Reset to Save Play Numbers" and try another square. A counter-diction is where it leave a cell somewhere with no choices!

*The base numbers will be shown in black, the numbers after the base numbers are in red, the obvious numbers are shown in green.

Note that if you need two saves and don't care about returning to the base numbers, you can use the save base numbers for the first save and save current play numbers for the second save.

OPTIONS:
1) Set To A Easy, Medium, Hard, Challenger or Wicked Sudoku. This automatically save the base numbers.

2) Clear Game: Clear last game so you can enter Numbers from a new puzzle (like one you found in a newspaper or magazine).

3) Set Base Numbers: Enter Numbers from a puzzle you want to play (like one you found in a newspaper or magazine). After you enter them, select "Set Base Numbers".
You can get back to the base numbers by using "Reset to Base Numbers": If you want to start over at the base numbers that you entered, select Reset to Base Numbers. This option will only show up if you have used 'Set Base Numbers' or selected one from the program.

4) Save Current Play Numbers: If you are about to guess, click on Save Current Play Numbers.
You can get back to the saved numbers before the guess by clicking on "Reset to Save Play Numbers". This option will only show up if you have used 'Set Current Play Numbers'.

User Scratch Pad: Allows the users to figure out what numbers are possible by their self.
Set User Scratch Pad to Auto Scratch Pad: Changes the user scratch pad to what the program calculates and selects 'User Scratch Pad'.
Auto Scratch Pad: Lets the program fill in the scratch pad numbers (actual without using the rules).

6) Obvious Off: The program will not give any help (no green numbers). Click on this if you are using one of the other two choices below and want to set a green to red by selecting it. Then select it from the pulldown and it will go to red. Then go back to one of the choices below. Of Course, you could use "Submit uses GREEN values" below
Help (one cell) for an Obvious: The program will show one green value. Use this if you are stuck. If no green number shows up, there are no obvious (as defined by the search criteria above).
Obvious from Previous Obvious: shows all the obvious that will be obvious from the previous found obvious. This will solve the easy puzzles! It may not show any for hard puzzles. It recursively goes through the obvious which narrows down other obvious selections.

7) Submit uses GREEN values: Use this if you agree with the program.
Submit ignores GREEN values: Use this if you want to enter data yourself. See 6. (WARNNG You will have to turn this off to select a green number.'

Possibilities for improvement:
Solve using recursion and warn user if choice made is wrong. Check for multiple solutions. Do not allow if save base is not unique, warn if errors (color?).
And of course, generate puzzles (easy 'solve with basic rules', medium 'solves if one correct choice will solve with basic rules and hard 'everything else').
Add a flag to make Auto Scratch Pad to show choices with rules elimination.
Add a login to be able to save a game. Limited by a large time and number of tries to keep others from making more than I do from this which is zero.