From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?=) Date: 2002-04-09T16:52:21+09:00 Subject: [ruby-dev:16806] Re: if Re: BigFloat けいじゅ@日本ラショナルソフトウェアです. In [ruby-dev :16779 ] the message: "[ruby-dev:16779] Re: if Re: BigFloat ", on Apr/08 03:22(JST) "Akinori MUSHA" writes: > BigDecimal と名前を変えて src/rough/ext/bigdecimal に入れ、 >さっそくいじっています。リリースや 1.7 の BigFloat を置き換える >タイミングについては、小林さんと相談して決めたいと思います。 了解しました. >> > 確かに仰るとおりですね。BigFloat 側で対応します。 >> >> お願いします. > > 先ほど、 Rational 対応を実装しました。 > > coerce では同精度の BigDecimal に変換し、加減・剰余算も精度を >揃えて演算します。乗除算については分母・分子を取り出し、掛けて >から割ります。 > > Rational 側では、乗除算だけ同様の処理をするようにして頂くと、 >BigDecimal がレシーバのときに比べて精度が落ちなくなると思います。 BigDecimalがレシーバの時はBigDecimalのメソッドが呼ばれるので, Rational側 でなんかしなくてはいけないってことはないと思うのですが? きっと, Rationalがレシーバの時ですよね? で, rat * bigdec -> rat.分子 * bigdec / rat.分母 と計算すればよいってことね? > Complex は、 Complex.generic? に BigDecimal を教えておけば、 >あとは BigDecimal が各種数学関数を覚えればいいということのよう >ですね。 えー. 多分そうですが, 細かいところを今検討中ですので, しばらくお待ち下さ い. __ ..............................石塚 圭樹@日本ラショナルソフトウェア... ----------------------------------->> e-mail: keiju@rational.com <<---