All pastes #945745 Raw Edit

Something

public text v1 · immutable
·published 2008-03-17 04:31 UTC
rendered paste body
Public Sub GenerateGrid()
        Clear() '1:Clear
        Dim Squares(80) As Square '2:Square
        Dim Available(80) As List(Of Integer) 
        Dim c As Integer = 0 

        For x As Integer = 0 To Available.Length - 1
            Available(x) = New List(Of Integer)
            For i As Integer = 1 To 9
                Available(x).Add(i)
            Next
        Next

        Do Until c = 81
A:          Dim i As Integer = GetRan(0, Available(c).Count - 1) '3:GetRan
            If Not Available(c).Count = 0 Then 
                Dim z As Integer = Available(c).Item(i)
                If Conflicts(Squares, Item(c, z)) = False Then '4:Conflict
                    Squares(c) = Item(c, z) '5:Item
                    Available(c).RemoveAt(i) 
                    c += 1 
                Else
                    Available(c).RemoveAt(i) 
                    GoTo A
                End If
            Else
                For y As Integer = 1 To 9 
                    Available(c).Add(y)   
                Next
                Squares(c - 1) = Nothing 
                c -= 1                   
                GoTo A
            End If
        Loop

        Dim j As Integer 
        For j = 0 To 80
            Sudoku.Add(Squares(j))
        Next
    End Sub