Date: Thu, 13 Apr 2006 11:22:26 +0200 From: Krzysztof Nakielski <nakiel@nakiel.net> To: Bill Moran <wmoran@collaborativefusion.com> Cc: freebsd-questions@freebsd.org Subject: Re: round() problem Message-ID: <20060413092226.GA10039@nakiel.dyndns.org> In-Reply-To: <20060412093701.0309d4a6.wmoran@collaborativefusion.com> References: <20060412100917.GA1406@nakiel.dyndns.org> <20060412093701.0309d4a6.wmoran@collaborativefusion.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Apr 12, 2006 at 09:37:01AM -0400, Bill Moran wrote: > On Wed, 12 Apr 2006 12:09:17 +0200 > Krzysztof Nakielski <nakiel@nakiel.net> wrote: > > > Hi, > > > > I am having problem with round() function in php, python, mysql. I am > > not sure if thats FreeBSD issue. I receive the same results on 4.11, 5.4 > > and 6.0. > > > > php (4.4.1, 5.1.2): > > %php -r 'print round(8.075, 2) ."\n";' > > 8.07 > > Have you compared these results to other POSIX systems? On RHEL 3 only PHP returns good result. In python and mysql there is the same issue. > The problem is in the way that real numbers are implemented. If you > do some searches, you'll find many, many discussions of this. Simple > fact is that the behaviour under these circumstances is not what > you think it is. This kind of thing is the reason that most languages > have high-precision floating point libraries available. > I will search for this. But first thing is to give up with python, php, mysql in billing software or write own functions otherwise you can lose money. Thanks, -- * Krzysztof Nakielski * * System Administrator *
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060413092226.GA10039>