Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/04/2016, 17:48
eferion
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 10 años, 1 mes
Puntos: 204
Respuesta: ir chequeando numeros en una matriz

Yo crearia una segunda matriz, del mismo tamaño que la primera e inicializada a 0.

El siguiente paso sería poner un 1 en mi posición actual.

Después crearía un algoritmo que empezando en la posición actual recorriese toda la matriz en todas direcciones comprobando si el número coincide con el inicial. En caso afirmativo se marca esa posición con un 1 en la matriz secundaria. En caso negativo se deja de buscar. Si no hay más posibilidades (tu posición actual está rodeada de '1' en la matriz secundaria) dejas de buscar.

Finalmente recorres la matriz secundaria y por cada 1 sustituyes el valor de la posición actual en la matriz buena por el número que corresponda.

Ejemplo:

Matriz inicial:

Código:
116456
115456
234566
789123
Posición (0,0) y pulso el 6

Código:
116456     110000     666456
115456     110000     665456
234566     000000     234566
789123     000000     789123
Posicion(0,0) y pulso el 4

Código:
666456     111000     444456
665456     110000     445456
234566     000000     234566
789123     000000     789123
Posicion(0,0) y pulso el 5

Código:
444456     111100     555556
445456     110100     555556
234566     000000     234566
789123     000000     789123
Posicion(1,5) y pulso el 2

Código:
555556     000001     555552
555556     000001     555552
234566     000011     234522
789123     000000     789123
PD.: El algoritmo de búsqueda podrías implementarlo recursivo, creo que es la opción más sencilla.

Un saludo
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.