elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Temas
Páginas: [1]
1  Programación / Programación Visual Basic / Ayuda - Algoritmo Sudoku en: 10 Julio 2009, 04:16 am
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
  1. Dim cuadros(9, 9) As Integer
  2. Private Sub Cmd_Comprobar_Click()
  3. For i = 0 To 80
  4.    fila = i \ 9
  5.    columna = i Mod 9
  6.    For j = fila * 9 To (fila * 9) + 8
  7.        If i <> j Then
  8.            If Command1(j).Caption = Command1(i).Caption Then
  9.                Command1(i).FontBold = True
  10.            End If
  11.        End If
  12.    Next
  13.    For j = columna To 72 + columna Step 9
  14.        If i <> j Then
  15.            If Command1(j).Caption = Command1(i).Caption Then
  16.                Command1(i).FontBold = True
  17.            End If
  18.        End If
  19.    Next
  20.    'For k = i\3 To i\3
  21.     '   For j = 0 To 8
  22.      '      If cuadros(k, j) <> cuadros(fila, columna) Then
  23.       '         If (Command1(cuadros(k, j)).Caption = Command1(i).Caption) And (Command1(cuadros(k, j)).Caption <> "") Then
  24.        '            Command1(cuadros(k, j)).FontBold = True
  25.         '       End If
  26.          '  End If
  27.        'Next
  28.    'Next
  29. Next
  30. End Sub
  31.  
  32. Private Sub Cmd_LimpiarN_Click()
  33. For i = 0 To 80
  34.    Command1(i).FontBold = False
  35. Next
  36. End Sub
  37.  
  38. Private Sub Command1_Click(Index As Integer)
  39. Dim valor As Integer
  40. Command1(Index).FontBold = False
  41. valor = Val(InputBox("Ingresa numero", "Sudoku", ""))
  42. If valor > 0 And valor < 10 Then
  43.    Command1(Index).Caption = valor
  44. Else
  45.    Command1(Index).Caption = ""
  46. End If
  47. End Sub
  48.  
  49. Private Sub Form_Load()
  50. Dim i As Integer
  51. For i = 0 To 80
  52.    Command1(i).Caption = ""
  53. Next
  54. Cmd_Comprobar.Caption = "Comprobar"
  55. Cmd_LimpiarN.Caption = "Limpiar comprobación"
  56. cuadros(0, 0) = 0
  57. cuadros(0, 1) = 1
  58. cuadros(0, 2) = 2
  59. cuadros(0, 3) = 9
  60. cuadros(0, 4) = 10
  61. cuadros(0, 5) = 11
  62. cuadros(0, 6) = 18
  63. cuadros(0, 7) = 19
  64. cuadros(0, 8) = 20
  65. cuadros(1, 0) = 3
  66. cuadros(1, 1) = 4
  67. cuadros(1, 2) = 5
  68. cuadros(1, 3) = 12
  69. cuadros(1, 4) = 13
  70. cuadros(1, 5) = 14
  71. cuadros(1, 6) = 21
  72. cuadros(1, 7) = 22
  73. cuadros(1, 8) = 23
  74. cuadros(2, 0) = 6
  75. cuadros(2, 1) = 7
  76. cuadros(2, 2) = 8
  77. cuadros(2, 3) = 15
  78. cuadros(2, 4) = 16
  79. cuadros(2, 5) = 17
  80. cuadros(2, 6) = 24
  81. cuadros(2, 7) = 25
  82. cuadros(2, 8) = 26
  83. cuadros(3, 0) = 27
  84. cuadros(3, 1) = 28
  85. cuadros(3, 2) = 29
  86. cuadros(3, 3) = 36
  87. cuadros(3, 4) = 37
  88. cuadros(3, 5) = 38
  89. cuadros(3, 6) = 45
  90. cuadros(3, 7) = 46
  91. cuadros(3, 8) = 47
  92. cuadros(4, 0) = 30
  93. cuadros(4, 1) = 31
  94. cuadros(4, 2) = 32
  95. cuadros(4, 3) = 39
  96. cuadros(4, 4) = 40
  97. cuadros(4, 5) = 41
  98. cuadros(4, 6) = 48
  99. cuadros(4, 7) = 49
  100. cuadros(4, 8) = 50
  101. cuadros(5, 0) = 33
  102. cuadros(5, 1) = 34
  103. cuadros(5, 2) = 35
  104. cuadros(5, 3) = 42
  105. cuadros(5, 4) = 43
  106. cuadros(5, 5) = 44
  107. cuadros(5, 6) = 51
  108. cuadros(5, 7) = 52
  109. cuadros(5, 8) = 53
  110. cuadros(6, 0) = 54
  111. cuadros(6, 1) = 55
  112. cuadros(6, 2) = 56
  113. cuadros(6, 3) = 63
  114. cuadros(6, 4) = 64
  115. cuadros(6, 5) = 65
  116. cuadros(6, 6) = 72
  117. cuadros(6, 7) = 73
  118. cuadros(6, 8) = 74
  119. cuadros(7, 0) = 57
  120. cuadros(7, 1) = 58
  121. cuadros(7, 2) = 59
  122. cuadros(7, 3) = 66
  123. cuadros(7, 4) = 67
  124. cuadros(7, 5) = 68
  125. cuadros(7, 6) = 75
  126. cuadros(7, 7) = 76
  127. cuadros(7, 8) = 77
  128. cuadros(8, 0) = 60
  129. cuadros(8, 1) = 61
  130. cuadros(8, 2) = 62
  131. cuadros(8, 3) = 69
  132. cuadros(8, 4) = 70
  133. cuadros(8, 5) = 71
  134. cuadros(8, 6) = 78
  135. cuadros(8, 7) = 79
  136. cuadros(8, 8) = 80
  137. End Sub



2  Programación / Scripting / Python- Modulo para graficos? en: 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  Programación / Scripting / Problema en llenado de matriz en: 7 Julio 2009, 03:58 am
Hola. El problema está en el llenado de matriz con números aleatorios:

Código
  1. import random
  2. n=input("Ingrese N")
  3. m=input("Ingrese M")
  4. matriz=[0][0]*4
  5. i=0
  6. j=0
  7. while(i<n):
  8. while(j<n):
  9. matriz[i][j]=random.randint(0,100)
  10. j=j+1
  11. i=i+1
  12. i=0
  13. j=0
  14. while(i<n):
  15. while(j<m):
  16. print matriz[i][j]
  17. j=j+1
  18. i=i+1
4  Programación / Scripting / Duda en Python en: 6 Julio 2009, 04:09 am
Hola acabo de iniciarme en Python, y tengo el siguiente problema:

Código
  1. import math
  2. a=raw_input("Ingresa a")
  3. b=raw_input("Ingresa b")
  4. c=raw_input("Ingresa c")
  5. z=pow(b,2)
  6. d=z-4*a*c
  7. if d>0:
  8.    w=sqrt(d)
  9.    x1=(-b+w)/(2*a)
  10.    x2=(-b-w)/(2*a)
  11.    print x1
  12.    print x2
  13. elif d==0:
  14.    x=-b/(2*a)
  15.    print x
  16. else:
  17.    print "No hay solucion en reales"

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

¿A qué se debe?
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines