In message <199803091741.CAA05774.keiju / cupmail0.rational.com> keiju / rational.com (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?= ) writes: > >Float::INFINITY > >Float::NaN どうせなら Numeric.... と思ったら Complex < Numeric だった. それじゃ 実数で.... と思ったら実は ruby には実数の Bignum は無かった (^^; # 普通無いか. でもはじめて知った. > そのようなC的な(?)方法もありますが, クラスを導入するのも1つの手かと思 > います. (略) > または, 上記の数の大小関係(演算関係)を適当につけて, > > +0 * +∞ == +0 > +∞ + -∞ == +0 > 0 == +0 > > などとすればいらなくなるかな? 謎の定義を与えると謎のバグに悩まされそうな. 少なくとも +0|-0 を無限 小の意味で使うのだとすると -0 = 0 = +0 では「いけません」よね? > むりせずNanかなあ... Nanが一番強い数になるのが気に入りませんが... 考え方でしょうね. IEEE の浮動小数点数表現での無限大/無限小/非数値を 表すのなら Float の定数であるべきで, NaN も存在するべきでしょう. 多 分. 存在しているからにはそれを使っていることもあり得るわけで. # 実装はめちゃくちゃ簡単だし. 一般に数値の話をするんだと.... どうなるんでしょうか? クラスが存在す るのは便利そうですが. そもそも無限大/無限小との演算の意味を考えなく ちゃならない. 足し算, 引き算, 掛け算はどうにでもなるとして, 割算です か. まさかまじめに極限を計算するわけにもいくまいし. # NaN については学部の時の先生が「数値表現といっているのに数値じゃな # いものが入っているなんて, 気持ち悪い」といってましたが (^^; =========================================================================== 柳川 @ 情報システム学研究科 . 電気通信大学 katze / yuba.is.uec.ac.jp March 10, 1998 It is never late to mend.