FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour SOLUCIONADO Suma Decimales
Posts: 1074
Joined: Fri Oct 07, 2005 01:56 PM
SOLUCIONADO Suma Decimales
Posted: Tue Mar 10, 2009 01:50 PM
Estimados

Como puedo hacer que esta operacion me da verdadero
Code (fw): Select all Collapse
procedure paso()
local a := {;
             53,;
            -4 ,;
           -10 ,;
            -1 ,;
            -1.4,;
            -2.0,;
           -10.0,;
            -1.0,;
            -2.0,;
           -10.0}, i, x:=0, nSuma := 11.6

for i := 1 to len(a)
    x += a[i]
next i


alert( nSuma = x )
return
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Suma Decimales
Posted: Tue Mar 10, 2009 02:09 PM

Patricio:

Intenta con la función ROUND()

alert( ROUND(nSuma,1) = ROUND(x,1) )

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 1074
Joined: Fri Oct 07, 2005 01:56 PM
Re: Suma Decimales
Posted: Tue Mar 10, 2009 02:24 PM
Gracias Armando..

Se soluciona el problema, pero creo que va mas alla de convertir

ya que si uno hace esto

Code (fw): Select all Collapse
str( x,10,1) == Str( nSuma,10,1) igual da verdadero


si los numero de la matriz los paso a excel este me da verdadero, no se donde puede estar el problema, aun mas
lo he pasado a clipper 5.3b e igual me da valor falso..

alguien tendra una explicacion lógica
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Suma Decimales
Posted: Tue Mar 10, 2009 05:12 PM

Patricio:

Sin yo ser experto, deduzco que el problema viene de la forma en que Clipper, Harbour y xHabrour tratan los números flotantes. Ojalá algun gurú nos aporte algo de luz sobre el tema.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 161
Joined: Wed Jan 25, 2006 10:45 AM
Re: Suma Decimales
Posted: Tue Mar 10, 2009 07:44 PM

Patricio..
Recuerdo una vez haber pasaso por ello :(, inclusive en algunos casos tenia que quitar los espacios
alltrim(str( x,10,1)) == alltrim(Str( nSuma,10,1)) para que de .T.
Creo que tenia que ver con las definiciones iniciales de las variables...

De todas maneras espero algun guro se pronuncie :)

Saludos

Ricardo R.

xHarbour 1.1.0 Simplex , Microsoft Visual Studio 2008, Bcc55, Fwh Build. 9.01
Posts: 1074
Joined: Fri Oct 07, 2005 01:56 PM
Re: Suma Decimales
Posted: Wed Mar 11, 2009 12:26 PM
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl

Continue the discussion