They looks like pretty standard floating point rounding errors. You get them in any programming language where you deal with fractions.
The trick is to expect that this will happen and plan your application around it. > -----Original Message----- > From: cfaussie@googlegroups.com > [mailto:[EMAIL PROTECTED] On Behalf Of Gareth Edwards > Sent: Tuesday, 20 February 2007 12:05 PM > To: CFAussie Mailing List > Subject: [cfaussie] Strange calculation behavior on CF 7.02 > > > If you are running coldfusion 7.02, or maybe 7.01 or 7.0? (don't know) > > Run this script below, and tell me if you get the same > results for each line. The way I see it, d should equal 0.1 > on every row. But this isn't the case. Is this a bug > introduced by Coldfusion 7.02? > > <cfset a = 0> > <cfset b = 0> > <cfset c = 0> > > <cfloop from="1" to="1000" index="i"> > <cfset a = RandRange(10000,20000)> > <cfset b = a*2> > <cfset c = "#ListFirst(Trim(a),".")#.00"> > <cfset c = c + 0.1> > <cfset d = a - val(b) + val(c)> > <cfoutput>#d#<br /></cfoutput> > </cfloop> > > Cheers > Gareth. > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "cfaussie" group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~----------~----~----~----~------~----~------~--~---