Como recorrer mas rapido un arreglo

Como recorrer mas rapido un arreglo

Postby Vladimir Zorrilla » Fri Mar 10, 2006 6:38 pm

Estimados amigos uso xharbour

Tenemos un arreglo de 2 dimensiones adbf

Quiere solo recorrer la columna 3 y cambiarla a numerica

For Fila=1 to len(aDbf)
aDbf[Fila,3]:=val(aDbf[Fila,3] )
Next Fila

Esto se puede hacer mas rapido con AEVAL y en todo
caso como serie el codigo


O es q para q sea mas rapido hay q usea FOR EACH y como
se haria en este caso
ME INTERESA FW Y XHB POR SER OPEN SOURCE
Vladimir Zorrilla
 
Posts: 225
Joined: Tue Feb 28, 2006 4:25 pm
Location: PERU

Re: Como recorrer mas rapido un arreglo

Postby wmormar » Sat Mar 11, 2006 1:42 am

Vladimir Zorrilla wrote:Estimados amigos uso xharbour

Tenemos un arreglo de 2 dimensiones adbf

Quiere solo recorrer la columna 3 y cambiarla a numerica

For Fila=1 to len(aDbf)
aDbf[Fila,3]:=val(aDbf[Fila,3] )
Next Fila

Esto se puede hacer mas rapido con AEVAL y en todo
caso como serie el codigo


O es q para q sea mas rapido hay q usea FOR EACH y como
se haria en este caso


Vladimir,

aPos := NIL
FOR EACH aPos IN aDbf
aPos[3] := VAL(aPos[3])
NEXT

De las extensiones de xHarbour.
William, Morales
Saludos

méxico.sureste
User avatar
wmormar
 
Posts: 1074
Joined: Fri Oct 07, 2005 10:41 pm
Location: México

Postby manuramos » Tue Mar 14, 2006 7:34 pm

El AEVAL sería así:

AEVAL(aDbf,{ |v,i| aDbf[i,3] := Val(v[3])}) // "i" es Indice y "v" es Valor, para cada elemento evaluado.

En cuanto a la velocidad, AEVAL es más rápido que FOR...NEXT pero desconozco si es más mejor que FOR EACH.

Un saludo
Nos Gusta Programar
manuramos
 
Posts: 219
Joined: Mon Dec 26, 2005 7:25 pm
Location: Jerez de la Frontera (Spain)


Return to FiveWin para CA-Clipper

Who is online

Users browsing this forum: No registered users and 8 guests