[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Floating point and precision loss - a bug?
- From: David Kastrup <dak@...>
- Date: Fri, 18 May 2007 17:58:25 +0200
Luís Santos <lsantos@itquality.com.br> writes:
> Hi folks,
>
> I have found a disturbing behaviour in the VM regarding floating point
> calculations.
>
> Code:
> n = 1000.2
> print(n - 1000)
> -- result: 0.20000000000005
>
> Is it a bug in the 5.1.2 release?
No. 1000.2 has no exact representation in base 2 floating point
numbers.
For that reason, financial calculations should be done in units of
cents or decicents, not dollars (insert your appropriate local
currency here).
--
David Kastrup