Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Simple sudoku - Frm7.frm

Frm7.frm

Caricato da: Albertking82
Scarica il programma completo

  1. Dim i As Integer, j As Integer, num As Integer, c As Integer, f As Boolean, err As Integer
  2. Const val = 7
  3. Dim pc2 As Integer, num3 As Integer
  4. Dim m(0 To val - 1, 0 To val - 1) As Integer, pc As Integer, r As Integer
  5. Private Sub cmddel_Click()
  6. For i = 0 To (val ^ 2) - 1
  7. If i <> pc And i <> pc2 Then
  8. Text1(i).Text = ""
  9. End If
  10. Next i
  11. Text1(0).SetFocus
  12. End Sub
  13.  
  14. Private Sub Cmdver_Click()
  15. For i = 0 To (val ^ 2) - 1
  16.  If Text1(i).Text = "" Then
  17.     f = True
  18.     Exit For
  19.     Else
  20.     f = False
  21.  End If
  22. Next i
  23.  If f Then
  24.   MsgBox "Il sudoku non è completo!!!", vbCritical, "Non completo"
  25.   Text1(0).SetFocus
  26.   Exit Sub
  27.  End If
  28. For i = 0 To (val ^ 2) - 1
  29.   row = Int(i / val)
  30.   col = i Mod val
  31.   m(row, col) = Text1(i).Text
  32.  Next i
  33.  For i = 0 To val - 1
  34.   For j = 1 To val - 2
  35.    If m(i, j) = m(i, j + 1) Then
  36.     f = False
  37.     err = err + 1
  38.     End If
  39.   Next j
  40. Next i
  41.  f = True
  42.  For j = 1 To val - 1
  43.   For i = 0 To val - 2
  44.    If m(i, j) = m(i + 1, j) Then
  45.     f = False
  46.     err = err + 1
  47.     End If
  48.   Next i
  49. Next j
  50. If f Then
  51.  MsgBox "Complimenti hai risolto correttamente il sudoku!!!", vbInformation, "Corretto"
  52.  r = MsgBox("Vuoi giocare ancora?", vbQuestion + vbYesNoCancel, "Vuoi giocare?")
  53.  If r = vbYes Then
  54.  pc = 10
  55.  pc2 = 10
  56.  Call cmddel_Click
  57.  Call Form_Load
  58.  Else
  59.  End
  60.  End If
  61.  Else
  62.  MsgBox "Il sudoku non è risolto correttamente hai commesso " & err & " errori!!!", vbInformation, "Errato"
  63. End If
  64. f = False
  65. err = 0
  66. End Sub
  67.  
  68. Private Sub Form_Load()
  69. f = False
  70. err = 0
  71. Randomize
  72.  num = Int((Rnd * val) + 1)
  73.  num2 = Int((Rnd * 8) + 1)
  74. Text1(num2).Text = num
  75.  num = Int((Rnd * val) + 1)
  76.  num3 = Int((Rnd * 8) + 1)
  77. Text1(num3).Text = num
  78. pc = num2
  79. pc2 = num3
  80. End Sub
  81.  
  82. Private Sub Form_Unload(Cancel As Integer)
  83. Frmmain.WindowState = 0
  84. End Sub
  85.  
  86. Private Sub Text1_Change(Index As Integer)
  87. Dim n As Integer
  88. If Text1(Index).Text <> "" Then
  89. If Not IsNumeric(Text1(Index).Text) Then
  90.  Text1(Index).Text = ""
  91. Else
  92.  n = Int(Text1(Index).Text)
  93.  End If
  94.  If n > val Then
  95.   Text1(Index).Text = ""
  96.  End If
  97. End If
  98.  
  99. End Sub