Search code examples
rubyfloating-accuracyruby-1.9.2

Addition error with ruby-1.9.2


When I add 0.1+0.2 I am getting 0.30000000000000004 but when I add the same number in ruby 1.8.7 I am getting the correct answer 0.3. I get 0.3 by rounding but I just want to get 0.3 on ruby 1.9.2 by adding 0.1 and 0.2


Solution

  • You need bigdecimal for this to make work.

    (BigDecimal('0.1') + BigDecimal("0.2")).to_f
    

    See below link:

    http://redmine.ruby-lang.org/issues/4394