65.9K
CodeProject is changing. Read more.
Home

Sudoku Solver

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.35/5 (9 votes)

May 28, 2006

1 min read

viewsIcon

25684

downloadIcon

783

The souurce code solves the soduku(Medum Level)

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