Introduction
This is the source by which the Sudoku puzzle can be solved upto MEDIUM Level
Description
This puzzle is solved by two Main Functions
1. findpossibilities()
This function helps in finding all the possibilities of values that can be in a single cell.
here is the main part that finds the possibilities
For i = 0 To 8
For j = 0 To 8
If B(i, j) = 0 Then
'check row
For l = 0 To 8
If B(i, l) <> 0 Then
temp = B(i, l) - 1
mem(i, j, temp) = 0
End If
Next l
'
check column
For l = 0 To 8
If B(l, j) <> 0 Then
temp = B(l, j) - 1
mem(i, j, temp) = 0
End If
Next l
'check cell 3 x 3
t1 = Int(i / 3)
t2 = Int(j / 3)
t1 = t1 * 3
t2 = t2 * 3
For l = t1 To (2 + t1)
For m = (0 + t2) To (2 + t2)
If B(l, m) <> 0 Then
temp = B(l, m) - 1
mem(i, j, temp) = 0
End If
Next m
Next l
Else
For l = 0 To 8
mem(i, j, l) = 0
Next l
End If
Next j
Next i
2. getmax()
This function helps in finding the optimal value in the possibilities