On Thu, 29 Oct 2009, Aldric Giacomoni wrote:

> Matthew K. Williams wrote:
>>> irb(main):016:0> 123.6 - 123.0
>>> => 0.599999999999994
>>>
>>> That's a little strange.. Isn't it?
>>
>> No, it's not.  Welcome to the wonderfully confusing world of floating
>> point math...
>
> Oh, thanks. Can I have some pop-corn and an introductory pamphlet before
> I bash my head against the wall? :)

Pamphlet -> http://en.wikipedia.org/wiki/IEEE_754-2008

Popcorn, well, it's kinda hard to transmit over the wire. ;-)

As a rule of thumb, if you really care about the decimals, either use 
BigDecimal or integers (and keep track of where the decimal should be -- 
this is common for $$$$).  Unfortunately, this is not limited to ruby, 
either -- C, Java, and a host of other languages all are subject.

Matt