Autor
|
Tema: Sudoku (Leído 6,323 veces)
|
Jaua10
Desconectado
Mensajes: 43
|
|
Re: Sudoku
« Respuesta #10 en: 23 Noviembre 2014, 07:27 am » |
|
Exacto por eso les pregunto xq no tengo idea de que mas podria hacer de acuerdo a mi nivel de conocimiento actual
|
|
|
En línea
|
|
|
|
engel lex
|
|
Re: Sudoku
« Respuesta #11 en: 24 Noviembre 2014, 01:17 am » |
|
Publiqué un tema de esto mismo hace poco pero en python 0% aleatorio
Ve el código, analizalo y ve que puedes aplicar
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
Jaua10
Desconectado
Mensajes: 43
|
|
Re: Sudoku
« Respuesta #12 en: 24 Noviembre 2014, 04:13 am » |
|
import pprint #crea array bidimensiona def create_matrix(m, n): return [[0]*n for _ in xrange(m)] #gira la matriz ccw def rotar_matrix(matrix): matrix_auxiliar = create_matrix(9,9) for x in range(9): for y in range(9): matrix_auxiliar[y][x] = matrix[x][y] return matrix_auxiliar def generar_tablero(semilla): #se genera un sudoku base sobre el que aplicar transformaciones basesudoku = create_matrix(9,9) for y in range(9): for x in range(9): basesudoku[y][x]= (x+(y%3)*3+(y/3))%9+1 #declaracion e inicializacion de variables #variables de transformacion #desplazamiento del 0 al 8 desplazamiento = 0 #rotacion del 0 al 3 rotacion = 0 #combinacion cada elemento del 0 al 5 combinacion = [0,0,0,0,0,0,0,0] #numero generatriz de 0 60466175 desplazamiento = semilla%9 semilla /=9 rotacion = semilla%4 semilla /=4 for i in range(8): combinacion[i] = semilla%6 semilla /= 6 #sudoku final sudoku = create_matrix(9,9) #auxiliar para copiar elementos auxiliar = create_matrix(3,9) #posibles combinaciones de 3 elementos combinatorias = create_matrix(6,3) combinatorias = [[0,1,2],[1,2,0],[2,0,1],[1,0,2],[0,2,1],[2,1,0]] #combinacion para cada elemento segun combinacion escogida combinador = create_matrix (8,3) for i in range(8):combinador[i] = combinatorias[combinacion[i]] #modificacion de matriz por desplazamiento lateral con desp for y in range(9): for x in range(9): sudoku[y][x] = basesudoku[y][(x+desplazamiento)%9] #mecla lineas de 3 en 3 segun combinacion for z in range(3): for copia in range(3): auxiliar[copia] = sudoku[z*3+copia] for y in range(3): sudoku[z*3+y] = auxiliar[combinador[z][y]] #se copia sudoku en auxiliar auxiliar = sudoku[:] #se mezclan los 3 renglones mayores for z in range(3): for y in range(3): sudoku[z*3+y] = auxiliar[combinador[3][z]*3+y] #se rota la matriz para aplicar conversiones en otro eje sudoku = rotar_matrix(sudoku) #se repite el proceso for z in range(3): for copia in range(3): auxiliar[copia] = sudoku[z*3+copia] for y in range(3): sudoku[z*3+y] = auxiliar[combinador[z+4][y]] auxiliar = sudoku[:] for z in range(3): for y in range(3): sudoku[z*3+y] = auxiliar[combinador[7][z]*3+y] #se endereza la matriz a su orientacion original for i in range(3): sudoku = rotar_matrix(sudoku) #se le da la orientacion indicada en rot for i in range(rotacion): sudoku = rotar_matrix(sudoku) return sudoku pprint.pprint( generar_tablero(0) )
Si te soy sincero no sabría como tomar algo de alli a dev c++, entiendo algunas cosas pero no sabria como pasarla.
|
|
|
En línea
|
|
|
|
engel lex
|
|
Re: Sudoku
« Respuesta #13 en: 24 Noviembre 2014, 04:38 am » |
|
Pequeña introducción for i in range(x)
Sería for(i=0;i<x;i++)
De resto no hay llaves sino espacios a la izquierda y create_matrix es para crear un array bidimensional Creo que hay debuggers online,intentalo
|
|
« Última modificación: 24 Noviembre 2014, 04:41 am por engel lex »
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
Jaua10
Desconectado
Mensajes: 43
|
|
Re: Sudoku
« Respuesta #14 en: 24 Noviembre 2014, 05:23 am » |
|
gracias mano
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Sudoku..
« 1 2 »
Programación Visual Basic
|
loco!
|
16
|
8,224
|
3 Junio 2006, 13:40 pm
por karmany
|
|
|
Sudoku
Programación C/C++
|
Jorge1452
|
1
|
1,804
|
4 Diciembre 2014, 15:19 pm
por _Enko
|
|
|
sudoku
Programación C/C++
|
cesar2015
|
3
|
2,231
|
8 Noviembre 2015, 21:04 pm
por ivancea96
|
|
|
sudoku en dev c++
Programación C/C++
|
andres timo
|
2
|
3,662
|
3 Marzo 2019, 02:50 am
por andres timo
|
|
|
javascript - Generador Sudoku
Desarrollo Web
|
TickTack
|
1
|
2,546
|
4 Enero 2020, 16:22 pm
por @XSStringManolo
|
|