From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?=) Date: 2005-10-31T18:28:35+09:00 Subject: [ruby-dev:27605] Re: Matrix class is broken without mathn けいじゅ@いしつかです. In [ruby-dev:27601] the message: "[ruby-dev:27601] Re: Matrix class is broken without mathn", on Oct/31 12:56(JST) Yukihiro Matsumoto writes: >まつもと ゆきひろです お久しぶりです. # っていうか, この間久しぶりにあったのはいいけど, ほとんど話ができなかっ # た >|matrix.rb は Numeric#/ ではなく Numeric#quo を使えば良いのでは >|ないでしょうか。 >|Numeric#quo は正にこういう時のためのメソッドだと思います。 たしかに, なんですが... >確かに。こんなパッチを作ってみましたが、正しく動作しているで >しょうか。元メールの問題は解決しているようですが。私はどうに >も算数が苦手で。 Matrix#detに quoはあまりふさわしくないかも, というのは, 行列の要素がすべて整数ならば, detは整数になるのですが, この場合はなら ない, さらに, 割り算と引き算を多用するこのdetのアルゴリズムでは誤差が 大きくなって, 整数値を返すようなdetが実際には(float的に)整数にならなく なる可能性がある. というかんじでしょうか? detの時は, rational.rb を require して, かつ, quoで計算するなら上記の 問題は解決ですが, float派にはうれしくないかも. __ ---------------------------------------------------->> 石塚 圭樹 <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---