From: shugo@... (Shugo Maeda) Date: 1998-03-11T01:10:52+09:00 Subject: [ruby-dev:1660] Re: [ruby-list:7066] Re: infinity 前田です。 In message "[ruby-list:7066] Re: infinity" Keiju ISHITSUKA wrote: |>> とすれば今のままで, 表現をちゃんとした対応を行なった方が良さそうですね. |>> # Math.exp(inf)以外はちゃんとした結果になっているところがこわい... | |と思いましたが, ちゃんとしていませんでした. (snip) |どうなっているんだ... Float(と他の数値クラスのインスタンス)の演算は結局Cのdoubleの 演算になると思うんですが...、 #include #include void p(int b) { if (b) puts("true"); else puts("false"); } int main() { double inf = 1.0 / 0.0, nan = 0.0 / 0.0; p(inf <= inf); /* true */ p(nan <= inf); /* false */ p(nan <= nan); /* false */ p(1 < nan); /* false */ p(nan > 1); /* false */ p(inf > 1); /* true */ p(inf < 1); /* false */ p(inf >= 1); /* true */ return 0; } なんか食い違ってますね。 -- 前田 修吾