The floor
method of class Float returns the next integer for large float values of only 9.
Why is that?
irb(main):041:0> (100.67893).floor
=> 100
irb(main):042:0> (100.99999999999999999).floor
=> 101
irb(main):043:0> (99.9999999).floor
=> 99
irb(main):044:0> (99.9999999999999999999).floor
=> 100