From: "hasari (Hiro Asari)" Date: 2012-03-31T12:44:53+09:00 Subject: [ruby-dev:45474] [ruby-trunk - Feature #2968] 数値の正負を返すメソッド Issue #2968 has been updated by hasari (Hiro Asari). #5523 でも触れましたが Complex#sign は z/|z| を返すのが数学的に一番よろしいかと思います。ふなばさんは #5523 では「複素数はエラーを考えています。」と仰っています。 ---------------------------------------- Feature #2968: 数値の正負を返すメソッド https://bugs.ruby-lang.org/issues/2968#change-25515 Author: naruse (Yui NARUSE) Status: Assigned Priority: Normal Assignee: mrkn (Kenta Murata) Category: core Target version: =begin 数値の正負を返すメソッドが欲しいです。 主たる想定用途は 0.0 と -0.0 を区別したいときです。 これは、0.0 > -0.0 や 0.0 == -0.0 では知ることができません。 とりあえず flo.to_s[0] == ?- で知ることができますが、これではあんまりです。 悩みどころはいつもの通りメソッド名ですが、 * Numeric#positive? と Numeric#negative? * Numeric#sign -> 負で -1、正で 1 * Numeric#sign? -> 負で true, 正で false (signbit(3) に習う) あたりでしょうか。 いかがでしょう。 =end -- http://bugs.ruby-lang.org/