Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - VonN

#1
Hola, estoy haciendo un sudoku. Me falta la parte para comprobar que un número "x" , no se repita en su cuadro de 3x3, me imagino que sabrán a que me refiero, aquellos que lo sepan jugar. He logrado hacer la comprobación por filas y columnas.

La parte que está comentada es la supuesta búsqueda pero mal hecha.
La parte de la definición de la matriz cuadros correponde a los elementos que se encuentran en cada cuadro de 3x3.

Alguna ayuda?

Código (vb) [Seleccionar]
Dim cuadros(9, 9) As Integer
Private Sub Cmd_Comprobar_Click()
For i = 0 To 80
    fila = i \ 9
    columna = i Mod 9
    For j = fila * 9 To (fila * 9) + 8
        If i <> j Then
            If Command1(j).Caption = Command1(i).Caption Then
                Command1(i).FontBold = True
            End If
        End If
    Next
    For j = columna To 72 + columna Step 9
        If i <> j Then
            If Command1(j).Caption = Command1(i).Caption Then
                Command1(i).FontBold = True
            End If
        End If
    Next
    'For k = i\3 To i\3
     '   For j = 0 To 8
      '      If cuadros(k, j) <> cuadros(fila, columna) Then
       '         If (Command1(cuadros(k, j)).Caption = Command1(i).Caption) And (Command1(cuadros(k, j)).Caption <> "") Then
        '            Command1(cuadros(k, j)).FontBold = True
         '       End If
          '  End If
        'Next
    'Next
Next
End Sub

Private Sub Cmd_LimpiarN_Click()
For i = 0 To 80
    Command1(i).FontBold = False
Next
End Sub

Private Sub Command1_Click(Index As Integer)
Dim valor As Integer
Command1(Index).FontBold = False
valor = Val(InputBox("Ingresa numero", "Sudoku", ""))
If valor > 0 And valor < 10 Then
    Command1(Index).Caption = valor
Else
    Command1(Index).Caption = ""
End If
End Sub

Private Sub Form_Load()
Dim i As Integer
For i = 0 To 80
    Command1(i).Caption = ""
Next
Cmd_Comprobar.Caption = "Comprobar"
Cmd_LimpiarN.Caption = "Limpiar comprobación"
cuadros(0, 0) = 0
cuadros(0, 1) = 1
cuadros(0, 2) = 2
cuadros(0, 3) = 9
cuadros(0, 4) = 10
cuadros(0, 5) = 11
cuadros(0, 6) = 18
cuadros(0, 7) = 19
cuadros(0, 8) = 20
cuadros(1, 0) = 3
cuadros(1, 1) = 4
cuadros(1, 2) = 5
cuadros(1, 3) = 12
cuadros(1, 4) = 13
cuadros(1, 5) = 14
cuadros(1, 6) = 21
cuadros(1, 7) = 22
cuadros(1, 8) = 23
cuadros(2, 0) = 6
cuadros(2, 1) = 7
cuadros(2, 2) = 8
cuadros(2, 3) = 15
cuadros(2, 4) = 16
cuadros(2, 5) = 17
cuadros(2, 6) = 24
cuadros(2, 7) = 25
cuadros(2, 8) = 26
cuadros(3, 0) = 27
cuadros(3, 1) = 28
cuadros(3, 2) = 29
cuadros(3, 3) = 36
cuadros(3, 4) = 37
cuadros(3, 5) = 38
cuadros(3, 6) = 45
cuadros(3, 7) = 46
cuadros(3, 8) = 47
cuadros(4, 0) = 30
cuadros(4, 1) = 31
cuadros(4, 2) = 32
cuadros(4, 3) = 39
cuadros(4, 4) = 40
cuadros(4, 5) = 41
cuadros(4, 6) = 48
cuadros(4, 7) = 49
cuadros(4, 8) = 50
cuadros(5, 0) = 33
cuadros(5, 1) = 34
cuadros(5, 2) = 35
cuadros(5, 3) = 42
cuadros(5, 4) = 43
cuadros(5, 5) = 44
cuadros(5, 6) = 51
cuadros(5, 7) = 52
cuadros(5, 8) = 53
cuadros(6, 0) = 54
cuadros(6, 1) = 55
cuadros(6, 2) = 56
cuadros(6, 3) = 63
cuadros(6, 4) = 64
cuadros(6, 5) = 65
cuadros(6, 6) = 72
cuadros(6, 7) = 73
cuadros(6, 8) = 74
cuadros(7, 0) = 57
cuadros(7, 1) = 58
cuadros(7, 2) = 59
cuadros(7, 3) = 66
cuadros(7, 4) = 67
cuadros(7, 5) = 68
cuadros(7, 6) = 75
cuadros(7, 7) = 76
cuadros(7, 8) = 77
cuadros(8, 0) = 60
cuadros(8, 1) = 61
cuadros(8, 2) = 62
cuadros(8, 3) = 69
cuadros(8, 4) = 70
cuadros(8, 5) = 71
cuadros(8, 6) = 78
cuadros(8, 7) = 79
cuadros(8, 8) = 80
End Sub




#2
Scripting / Python- Modulo para graficos?
8 Julio 2009, 22:18 PM
Hola, existe algún módulo para manipular gráficos? Me refiero a que por ejemplo me gustaría hacer un programa para representar una función cuadrática por ejemplo.

Un saludo
#3
Scripting / Problema en llenado de matriz
7 Julio 2009, 03:58 AM
Hola. El problema está en el llenado de matriz con números aleatorios:

Código (python) [Seleccionar]
import random
n=input("Ingrese N")
m=input("Ingrese M")
matriz=[0][0]*4
i=0
j=0
while(i<n):
while(j<n):
matriz[i][j]=random.randint(0,100)
j=j+1
i=i+1
i=0
j=0
while(i<n):
while(j<m):
print matriz[i][j]
j=j+1
i=i+1
#4
Scripting / Duda en Python
6 Julio 2009, 04:09 AM
Hola acabo de iniciarme en Python, y tengo el siguiente problema:

Código (python) [Seleccionar]
import math
a=raw_input("Ingresa a")
b=raw_input("Ingresa b")
c=raw_input("Ingresa c")
z=pow(b,2)
d=z-4*a*c
if d>0:
    w=sqrt(d)
    x1=(-b+w)/(2*a)
    x2=(-b-w)/(2*a)
    print x1
    print x2
elif d==0:
    x=-b/(2*a)
    print x
else:
    print "No hay solucion en reales"


Pero me larga el siguiente error:
<module>
    z=pow(b,2)
TypeError: unsupported operand type(s) for ** or pow(): 'str' and 'int'


¿A qué se debe?