> No probe en VAST pero simplemente esto en Visual Smalltalk
> 1.1151 roundTo: 0.01 -> 1.12
> 70.0851 roundTo: 0.01 -> 70.09

Efectivamente, en VAST da igual.

>Conclusión, jamás intentes manejar dinero con Floats porque vas a sumar
> cualquier fruta

Claro. Eso ya lo tenía en cuenta. Pero tanto en Dolphin como en VAST,
aunque use ScaledDecimal, el caso de 70.085 sigue redondeando mal.

(ScaledDecimal fromString: '70.085') roundTo: 0.01 -> 70.08

Qué loco ésto. Parece una pavada, pero tengo una diferencia de 1 centavo !! je.
Voy a ver el VW. Sino me hago un método que redondee de otra forma.

Gracias y abrazo,
Santiago


On 4/27/06, GallegO <[EMAIL PROTECTED]> wrote:
>
> Hola
>
> Aparte de lo que comentaba Hernan fijate si podes levantar el numero de
> otra manera. Tambien tiene que ver cómo se parsea el numero y se
> convierte a Float en cada Smalltalk, si se usan librerias del SO, etc.
>
> No probe en VAST pero simplemente esto en Visual Smalltalk
> 1.1151 roundTo: 0.01 -> 1.12
> 70.0851 roundTo: 0.01 -> 70.09
> Fijate que agregarle un digito mas de precision hace que devuelva
> valores correctos. Obvio, no es el mismo numero.
>
> Si buscas por Internet vas a encontrar miles de explicaciones se por qué
> no se pueden representar en forma binaria y exacta cualquier numero decimal.
>
> Saludos
>   GallegO
>
> Santiago Cardoso Geller escribió:
> > Hola amigos. Quería comentar una experiencia.
> >
> > En VAST 6.0.3, el resultado de
> >
> > 1.115 roundTo: 0.01 es 1.11 cuando debería ser 1.12.
> > Lo mismo pasa con 70.085. 70.085 roundTo: 0.01 -> 70.08 cuando debería
> > ser 70.09. Probé lo mismo convirtiéndolos a ScaledDecimal. No se
> > arregla.
> >
> > Probé en VAST 4.5, pero también anda de la misma forma.
> >
> > Me fijé en Dolphin, y el primer caso devuelve el resultado esperado.
> > 1.115 roundTo: 0.01 -> 1.12
> >
> > Pero con el otro numero no. Sigue andando "mal".
> > 70.085. 70.085 roundTo: 0.01 -> 70.08
> >
> > La implementación de #roundTo: en ambos ST son distintas. Pero igual
> > no andaría ninguna de las dos.
> >
> > ¿Alguien tuvo este tipo de problemas? ¿Tiene alguna solución?
> >
> > Gracias y abrazo para todos,
> > Santiago
> >
> >
> > >
> >
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Ha recibido este mensaje porque está suscrito a Grupos de Google 
"clubSmalltalk" grupo.
 Si quiere publicar en este grupo, mande un correo electrónico a 
[email protected]
 Para anular la suscripción a este grupo, envíe un mensaje a [EMAIL PROTECTED]
 Para visualizar más opciones, visite este grupo 
enhttp://groups.google.com/group/clubSmalltalk
-~----------~----~----~----~------~----~------~--~---

Responder a