sep 29

Variables de tipo Array en 3D

Posted in ideas, utilidades

Como os dije hace poco tiempo, ese mismo dia que iniciamos la gran comilona, 😀 , es posible usar variables de tipo Array en 3D, y hoy vamos a desvelar como.

Para empezar dire que hay 2 metodos que se me ocurren ahora mismo, pero eso no significa que sean los unicos, asi que os animo a comentar si teneis nuevas ideas:

  1. Como he dicho se me ocurren 2 formas, y esta primera es la mas sencilla. Para ponerla en practica solo necesitas buscar unas gafas 3D de las que usaste para ver la peli de Avatar, y veras como tu Array empieza a salir de la pantalla como si te fuera a comer, 😉
  2. Y la segunda, es algo mas complicado, pero no te comera. Para este segundo metodo, necesitas unicamente una “Tabla”, si tan sencillo como eso, ahora te lo explico con mas detalle.

Vamos a crear una tabla, y unicamente necesitamos 4 campos:

  • #DIM_1 , este campo debe ser numerico y se corresponde con el identificador que usaremos para la primera dimension del Array
  • #DIM_2 , este campo debe ser numerico y se corresponde con el identificador que usaremos para la segunda dimension del Array
  • #DIM_3 , este campo debe ser numerico y se corresponde con el identificador que usaremos para la tercera dimension del Array
  • #CONTENIDO, es un campo alfabetico o numerico, dependiendo de cual sea el contenido que almacenaremos en el Array

Ya tenemos la tabla, ahora crearemos 3 indices, uno para cada uno de los campos #DIM_? y esto nos facilitara la labor de busqueda de valores en el array.

De esta forma, con una busqueda compleja, que usa los 3 indices podemos buscar cualquier valor, del array y en cualquiera de las dimensiones.

Para crear el array, solo necesitamos un proceso con 3 bucles anidados que permiten crear todos los valores,

¿Crees que es posible viajar en el tiempo?

Pues si eres de los que creen, estas de suerte, toma nota:

Crea un nuevo campo #DIM_4 en la tabla, crea un nuevo indice para ese campo, modifica la busqueda para incluir el nuevo indice en ella, y modifica los procesos para crear el array anidando un 4 bucle, y realiza estos cambios en todos los demas objetos que sean necesarios, y veras como el milagro se hace realidad y entras en la 4ª Dimension 😀 (el tiempo)

No se si es lo que esperabas, pero es una solucion a un problema concreto.

Quiza esperabas que de verdad, los Arrays podian ser en 3D, pero piensalo bien, una tabla en memoria definida con esta estructura y un Array “Local”, en que se diferencian. Y si necesitas que el Array sea “Global” o “Publico”, pues solo tienes que hacerlo en una Tabla con persistencia en disco.

Este truco es valido para V7 y tambien para su hermana (v6.x) 😉

Si estas decepcionado, lo siento, … para hacer milagros me estoy entrenando.

PDF Printer    Enviar artculo en formato PDF   
comments: Closed

6 Responses to “Variables de tipo Array en 3D”

  1. Miguel dice:

    Ingenioso, :-)

  2. Roberto Blasco dice:

    ¿Porqué no utilizar un xml y situarlo en una variable global?. El acceso es más rápido ya que no hay que acceder al disco duro, y el númer de dimensiones infinita.

    Un saludo. Roberto.

  3. admin dice:

    @ Miguel,

    muchas gracias

    @Roberto Blasco,

    gracias a ti tambien,
    como dije, seguramente hay mas formas y la que propones puede ser incluso mejor que esta,
    pero … he hablado de hacerlo con una tabla en memoria, para no necesitar accesos al disco “array local”, y solo hacerlo con una tabla en disco para convertir el array en “global”.
    Tambien podria realizar el ejemplo en LML :D, ya puestos, y tambien tendriamos infinitas dimensiones. pero he utilizado una tabla para realizar el ejemplo con elementos propios de velneo.

    Se agradece mucho tu comentario, pues no habia pensado en esa posiblidad.

    un saludo a todos.



Pings responses to this post