FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Como saber la longitud de un array
Posts: 392
Joined: Tue Jul 29, 2008 01:55 PM
Como saber la longitud de un array
Posted: Wed Jun 25, 2014 05:03 PM

Hola Fivewinners.

Requiero conocer la longitud de las dos o tres dimensiones de un array.

Uso la funcion LEN() para conocer la longitud de la primer dimension, pero no se cono saber la longitud de la segunda y las subsecuentes.

Alguien conoce el truco ?

Saludos

Visite Chiapas, el paraiso de México.
Posts: 1344
Joined: Wed Nov 16, 2005 09:14 PM
Re: Como saber la longitud de un array
Posted: Wed Jun 25, 2014 10:10 PM
Code (fw): Select all Collapse
#include "FiveWin.ch"

function Main()

   local aArreglo := { { {1,2,3}, {1,2,3,4} }, {1,2,3,4,5}, { {1},{2},{3} } }

   MsgInfo(Len(aArreglo))
   MsgInfo(Len(aArreglo[1]))
   MsgInfo(Len(aArreglo[1,1]))
   MsgInfo(Len(aArreglo[1,2]))
   MsgInfo(Len(aArreglo[2]))
   MsgInfo(Len(aArreglo[3][1]))

return nil

La ultima sería igual que decir aArreglo[3,1], lo puse asi para que veas como se puede escribir...
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Como saber la longitud de un array
Posted: Wed Jun 25, 2014 10:50 PM
devtuxtla wrote:Hola Fivewinners.

Requiero conocer la longitud de las dos o tres dimensiones de un array.

Uso la funcion LEN() para conocer la longitud de la primer dimension, pero no se cono saber la longitud de la segunda y las subsecuentes.

Alguien conoce el truco ?

Saludos


No entiendo bien lo que necesitas
Te adjunto un ejemplo para calcular la longitud total de un array, recorriéndolo entero :-)

Code (fw): Select all Collapse
#include "fivewin.ch"

Static nLen := 0

Function Main()
Local aPruebas := { { {1,2,3}, {1,2,3,4} }, {1,2,3,4,5}, { {1,2},{2},{5,4,3,2,1} } }
      LenMulti( aPruebas )
      ? nLen
Return nil


Function LenMulti( aA )
Local x

For x = 1 to Len( aA )
    if Valtype( aA[ x ] ) = "A"
       LenMulti( aA[ x ] )
    else
       nLen++
    endif
Next x

Return nil


Si tomando como ejemplo el array de las lineas anteriores, comentas lo que tendrías que obtener, es posible que pueda echarte una mano
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces

Continue the discussion