けいじゅ@日本ラショナルソフトウェアです.

In [ruby-math:00785] the message: "[ruby-math:00785] Re:
Rational#to_f", on Dec/09 02:13(JST) masaki writes:

>正木です。
>[ruby-math:00773] での Rational#to_f に

ごめんなさい. 気にはなってはいたのですが...

>(1/5**23).to_f != 1.0/5**23
>
>となる bug がありました。以下のように訂正します。
>
>class Rational
>  def to_f
>    return -(-self).to_f if self<0
>    return floor.to_f+(self-floor).to_f if self>1
>    return 1/(1/self).to_f if denominator.to_f.infinite?
>    numerator.to_f/denominator
>  end
>end

この件ですが, Floatのフォーマットを意識した変換の方が良いと思うのです
が? つまり, 2進法をベースにした変換というか...

__
..............................石塚 圭樹@日本ラショナルソフトウェア...
----------------------------------->> e-mail: keiju / rational.com <<---