Foros del Web » Programación para mayores de 30 ;) » C/C++ »

duda sobre arreglos

Estas en el tema de duda sobre arreglos en el foro de C/C++ en Foros del Web. Buenas a todos tengo una pequeña duda y me preguntaba si me podrian ayudar con ella es sobre los arreglos de doble sub indice mi ...
  #1 (permalink)  
Antiguo 30/12/2014, 18:42
Avatar de Aleinshir  
Fecha de Ingreso: diciembre-2014
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Pregunta duda sobre arreglos

Buenas a todos tengo una pequeña duda y me preguntaba si me podrian ayudar con ella es sobre los arreglos de doble sub indice mi duda es que como puedo hacer para que detecte el final del arreglo estoy con el manual de deitel en el ejercicio del caballo prefiriria que no me dijeran el codigo si no una "pista" no entiendo del todo los arreglos por ejemplo si mi caballo esta en la posicion (0,0) y hace el movimiento horizontal 1, vertical -2 la nueva posicion seria? (1,?) creo que quizas dejando un margen de una linea alrededor del tablero y hacer movimientos de 1 en 1 y detectar si toca la posicion (0,0-8) regresar o si toca la (0-8,0) etc pero creo que hay una mejor manera de resolverlo gracias de adelantado por sus respuestas
  #2 (permalink)  
Antiguo 01/01/2015, 08:42
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 11 años, 1 mes
Puntos: 38
Respuesta: duda sobre arreglos


Depende del tipo de mapa de coordenada cartesiana que tienes.

Si el origen esta en el centro "Origen(0,0)" como en la imagen, y la coordenada x incrementa hacia la derecha y la coordenada y incrementa hacia arriba. tu caballo estaría en:

Pero ojo que el mapa puede no ser igual ya que el origen puede estar en cualquier lugar de un mapa. Por ejemplo asi:


O asi:

Se usa mucho para la creación de los videojuegos.
Básicamente debes saber donde esta el punto de origen, y hacia donde incrementan/decrementa la X, y también la Y. De eso depende como se mueva tu caballo.

Si el punto punto de origen esta en el centro del plano puedes moverte hacia cualquier lado que se representa con X/Y, y debes saber en que dirección vas si incrementa la x, y en que dirección vas si incrementas la y. Lo mismo pueden decrementar también. El que te pasa el ejercicio debe proveer información para que montes tu mapa de coordenadas o no es posible hacer nada.

Si necesitas mas ayuda sobre el tema dilo =).
Suerte!
  #3 (permalink)  
Antiguo 02/01/2015, 12:42
Avatar de Aleinshir  
Fecha de Ingreso: diciembre-2014
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: duda sobre arreglos

Gracia por tu respuesta, ya habia tenido en cuenta eso, ese comienza en el punto (0,0) esquina superior izquierda
================
=1000000000000000= 0
=0000000000000000= 1
=0000000000000000= 2
=0000000000000000= 3
================
y tengo una
condicion (if) que dice
Tablero[posicion_h + movimiento_h[i]][posicion_v + movimiento_v[i]] = 0 -> se mueve si no, salta al siguiente movimiento
tablero es un array de 8x8
posicion_h y posicion_v son enteros
i es un entero que varia su numero de 0 a 7
movimiento es un array que almacena los movimientos

digamos ahora que la posicion del caballo es la siguiente (0,3)
================
=0000000000000000=
=0000000000000000=
=0000000000000000=
=1000000000000000=
================
y hago el movimiento numero 3 ( horizontal - 2 y vertical - 1)
no deberia moverse en cambio la nueva posicion es esta
================ X
=0000000000000000=
=0000000000000000=
=0000000000000010=
=0000000000000000=
================
Y
x suma hacia >
y suma hacia V
  #4 (permalink)  
Antiguo 02/01/2015, 13:05
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 11 años, 1 mes
Puntos: 38
Respuesta: duda sobre arreglos

si... Eso es así por que em memoria "TODO" es consecutivo. una matriz en realidad es una tabla XDD.
Mire este vídeo y lo entenderás XDD: http://v1.minidosis.org/C++/Matrices...0en%20Memoria/

Suerte!
  #5 (permalink)  
Antiguo 03/01/2015, 00:12
Avatar de Aleinshir  
Fecha de Ingreso: diciembre-2014
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: duda sobre arreglos

lo resolvi asi en vez de 8x8 lo hice de 12x12 dejando 2 verticales extras y 2 horizontales extras y determinando si el caballo cae en ellos se regresa a su posicion original lo termina en 10 (me salio una vez) 3000 a 12000 intentos (fuerza bruta) y comenzando en el centro hasta 120000 intentos xd ya se me habia ocurrido pero sigo pensando que debe haber una forma mas "elegante" y eficiente xd ah y gracias por tu atencion ya veo el video xd seguro me sirve muchisimo ya que eso si todavia no lo entiendo del todo xd bueno de nuevo gracias y que tenga un feliz año 2015 xD
  #6 (permalink)  
Antiguo 03/01/2015, 07:49
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 11 años, 1 mes
Puntos: 38
Respuesta: duda sobre arreglos

mira... creo que para que entiendas el tema deberías ir a un post de antaño cuando era novato. Digo mas de lo que soy ahora jajaja
Miere este post a ver si te ayuda: http://foro.elhacker.net/programacio...471#msg1903471

son 4 paginas de mapillas, busqueda etc etc.

Etiquetas: arreglo, final
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:10.