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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Sudoku
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Sudoku  (Leído 6,450 veces)
Jaua10

Desconectado Desconectado

Mensajes: 43


Ver Perfil
Sudoku
« en: 22 Noviembre 2014, 06:10 am »

Buenas noches estoy realizando un nuevo programa donde dada una matriz 9x9 el usuario pueda ingresar 3 numeros y posicionarlos donde quiera, una vez hecho esto los otros numeros deben generarse sin repetirse ni en filas ni en columnas del 1 al 9, llevo un adelanto pero no se como hacer para generar numeros aleatorio pero que no serepitan ni en filas ni en columnas esto sin usar la funcion random.

Código:
//fila j
//col i
#include <stdio.h>
#include <conio.h>
main()
{
int matriz[10][10],i,j;

for(i=1;i<10;i++)
{
for(j=1;j<10;j++)

matriz[j][i] = 0;
}
printf("Ingrese posicion de fila: ");
scanf("%d",&j);
while(j<1||j>9)
{
printf("\nEl numero ingresado no es valido para una fila");
printf("\nPorfavor reingrese un numero de fila: ");
scanf("%d",&j);
}
printf("\nIngrese posicion de columna: ");
scanf("%d",&i);
while(i<1||i>9)
{
printf("\nEl numero ingresado no es valido para una columna");
printf("\nPorfavor reingrese un numero de columna: ");
scanf("%d",&i);
}
printf("\nIngrese el valor para la posicion [%d][%d]: ",j+0,i+0);
scanf("%d",&matriz[j][i]);
printf("Ingrese posicion de fila: ");
scanf("%d",&j);
while(j<1||j>9)
{
printf("\nEl numero ingresado no es valido para una fila");
printf("\nPorfavor reingrese un numero de fila: ");
scanf("%d",&j);
}
printf("\nIngrese posicion de columna: ");
scanf("%d",&i);
while(i<1||i>9)
{
printf("\nEl numero ingresado no es valido para una columna");
printf("\nPorfavor reingrese un numero de columna: ");
scanf("%d",&i);
}
printf("\nIngrese el valor para la posicion [%d][%d]: ",j+0,i+0);
scanf("%d",&matriz[j][i]);
printf("Ingrese posicion de fila: ");
scanf("%d",&j);
while(j<1||j>9)
{
printf("\nEl numero ingresado no es valido para una fila");
printf("\nPorfavor reingrese un numero de fila: ");
scanf("%d",&j);
}
printf("\nIngrese posicion de columna: ");
scanf("%d",&i);
while(i<1||i>9)
{
printf("\nEl numero ingresado no es valido para una columna");
printf("\nPorfavor reingrese un numero de columna: ");
scanf("%d",&i);
}
printf("\nIngrese el valor para la posicion [%d][%d]: ",j+0,i+0);
scanf("%d",&matriz[j][i]);
printf("\n");

for(j=1;j<10;j++)
{
for(i=1;i<10;i++){
printf("%d\t",matriz[j][i]);
}
printf("\n");
}
getch();
return 0;
}

me podrian ayduar a como hacer para que en la matriz se generen el resto de los numeros aleatorios sin repetirse ni en filas ni en columnas, gracias de antemano


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Sudoku
« Respuesta #1 en: 22 Noviembre 2014, 16:39 pm »

Si te sirve de ayuda, aquí tienes un algoritmo recursivo para solucionar un sudoku (que viene siendo lo que intentas hacer tú):

http://norvig.com/sudoku.html


En línea

Jaua10

Desconectado Desconectado

Mensajes: 43


Ver Perfil
Re: Sudoku
« Respuesta #2 en: 22 Noviembre 2014, 17:56 pm »

gracias por tu sugerencia ivancea96, pero no puedo usar una funcion que genere numeros aleatorios, lo que quiero saber es que puedo hacer que me genere numeros q no se repitan ni en filas ni en columnas pero sin usar la funcion de random, alguna otra solucion o sugerencia?
En línea

zShackra

Desconectado Desconectado

Mensajes: 59


Ver Perfil WWW
Re: Sudoku
« Respuesta #3 en: 22 Noviembre 2014, 18:48 pm »

gracias por tu sugerencia ivancea96, pero no puedo usar una funcion que genere numeros aleatorios, lo que quiero saber es que puedo hacer que me genere numeros q no se repitan ni en filas ni en columnas pero sin usar la funcion de random, alguna otra solucion o sugerencia?

Lee por acá...
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Sudoku
« Respuesta #4 en: 22 Noviembre 2014, 19:13 pm »

A medida que generas los numeros aleatorio ve comprobando en horizontal, vertical y cuadrado
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 Desconectado

Mensajes: 43


Ver Perfil
Re: Sudoku
« Respuesta #5 en: 22 Noviembre 2014, 19:33 pm »

es posible que pueda hacer en mi codigo otra matriz y que vaya comprobando de acuedo a los numeros ingresados por el usuario y esta o no en esa fila y columna y de no se asi agregarlo? no se si me explico mi programa hasta el momento ingreso 3 numeros en las posiciones que yo deseo, pero luego de ingresar esos 3 numeros deberia de generar el resto de los numeros en las otra posiciones sin repetirse ni en filas ni en columnas, es posible hacer otra alternativa de comprobacion y que se vayan agregando tal vez una matriz mas? es que mi profesor no quiere que se agregue ninguna funcon que genere numeros aleatorios como rand() sdran() ni ningun otro sino que se haga de una manera manual, por eso es que se me dificulta un poco ya que no tengo al idea de como hacerlo y solo se me ocurrio lo de argar otra matriz, al menos que ustedes me ayuden o sugieran con otra cosa.Gracias de ante mano
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Sudoku
« Respuesta #6 en: 22 Noviembre 2014, 22:17 pm »

gracias por tu sugerencia ivancea96, pero no puedo usar una funcion que genere numeros aleatorios, lo que quiero saber es que puedo hacer que me genere numeros q no se repitan ni en filas ni en columnas pero sin usar la funcion de random, alguna otra solucion o sugerencia?

En ningún momento se generan números aleatorios en el link que pasé.

Eso demuestra que para nada lo miraste.
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Sudoku
« Respuesta #7 en: 22 Noviembre 2014, 22:27 pm »

A partir de 3 numeros es dificil... puedes generar una matriz base y con los numeros ingresados les das desplazamiento a la matriz
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 Desconectado

Mensajes: 43


Ver Perfil
Re: Sudoku
« Respuesta #8 en: 23 Noviembre 2014, 06:29 am »

En ningún momento se generan números aleatorios en el link que pasé.

Eso demuestra que para nada lo miraste.

si lo vi ivancea96 solo que el profesor me lo manod de otra forma

Si podrian ayudarme a como hacer un recorrido? no tengo idea de como hacerlo porfavor.
En línea

zShackra

Desconectado Desconectado

Mensajes: 59


Ver Perfil WWW
Re: Sudoku
« Respuesta #9 en: 23 Noviembre 2014, 07:03 am »

Si te sirve de ayuda, aquí tienes un algoritmo recursivo para solucionar un sudoku (que viene siendo lo que intentas hacer tú):

http://norvig.com/sudoku.html

Recursividad es un tema que se dicta mucho después de arreglos... dudo mucho que le dejen usar el mismo.
« Última modificación: 23 Noviembre 2014, 07:05 am por zShackra » En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sudoku.. « 1 2 »
Programación Visual Basic
loco! 16 8,252 Último mensaje 3 Junio 2006, 13:40 pm
por karmany
Sudoku
Programación C/C++
Jorge1452 1 1,842 Último mensaje 4 Diciembre 2014, 15:19 pm
por _Enko
sudoku
Programación C/C++
cesar2015 3 2,263 Último mensaje 8 Noviembre 2015, 21:04 pm
por ivancea96
sudoku en dev c++
Programación C/C++
andres timo 2 3,703 Último mensaje 3 Marzo 2019, 02:50 am
por andres timo
javascript - Generador Sudoku
Desarrollo Web
TickTack 1 2,589 Último mensaje 4 Enero 2020, 16:22 pm
por @XSStringManolo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines