ver movimiento en matriz
Publicado por JonathanFarias (1 intervención) el 17/11/2010 22:07:57
hola gente, aqui les mando un problemilla interesante:
Dada una matriz de 100x100 por ejemplo,
los elementos de esta matriz representan las alturas de diferentes puntos de una montaña
(luego es de esperar que los nuemros del centro sean mayores que los de los bordes)
la montaña hace erupcion(era un volcan) luego la lava discurre.
se pide representar con simbolos ($) el recorrido de la lava, y con espacios vacios por donde no pase.
Este problema lo he resuelto solo para el caso en el que la lava no se divide.
primero halle el numero mas grande de la matriz,que me indicaria la cima.
luego mediente un repeat y for halle la mayor diferencia del numero de la cima y sus alrrededores(8 numeros)y considerando que la lava discurre por donde halla mayor pendiente(mayor diferencia de alturas)el nuevo punto a analizar con los 8 numeros circundantes seria aquel que genera la mayor diferencia.el problema se detiene cuando algun elemento circundante es cero, por eso a la matriz que que me dieron(lei un archivo) le agregé ceros a todo el borde.
¿pero que pasaria si hay dos numeros con igual mayor diferencia?, entonces cada numero por separado deberia de analizarse.
incluso estas dos nuevas trayentorias podrian generar otras trayectorias.
la programacion me esta facinando!!.
por favor ayudarme , tengo solo unas semanas aprendiendo pascal.
gracias!!....
Dada una matriz de 100x100 por ejemplo,
los elementos de esta matriz representan las alturas de diferentes puntos de una montaña
(luego es de esperar que los nuemros del centro sean mayores que los de los bordes)
la montaña hace erupcion(era un volcan) luego la lava discurre.
se pide representar con simbolos ($) el recorrido de la lava, y con espacios vacios por donde no pase.
Este problema lo he resuelto solo para el caso en el que la lava no se divide.
primero halle el numero mas grande de la matriz,que me indicaria la cima.
luego mediente un repeat y for halle la mayor diferencia del numero de la cima y sus alrrededores(8 numeros)y considerando que la lava discurre por donde halla mayor pendiente(mayor diferencia de alturas)el nuevo punto a analizar con los 8 numeros circundantes seria aquel que genera la mayor diferencia.el problema se detiene cuando algun elemento circundante es cero, por eso a la matriz que que me dieron(lei un archivo) le agregé ceros a todo el borde.
¿pero que pasaria si hay dos numeros con igual mayor diferencia?, entonces cada numero por separado deberia de analizarse.
incluso estas dos nuevas trayentorias podrian generar otras trayectorias.
la programacion me esta facinando!!.
por favor ayudarme , tengo solo unas semanas aprendiendo pascal.
gracias!!....
Valora esta pregunta


0