[ruby-trunk - Feature #5523][Open] Numeric#sign の追加

Issue #5523 has been reported by tadayoshi funaba.


Feature #5523: Numeric#sign の追加

Author: tadayoshi funaba
Status: Open
Priority: Normal
Assignee:
Category: core
Target version: 2.0

負の零なども含め正しく符号を判断するために必要です。実際、complex や
lib/cmath.rb などの中ではこのような判断が必要ですが、標準では提供されて
いないため、不自然なものになっています。

値は-1か+1のいずれかになります。

Issue #5523 has been updated by Hiro A…

0 については勿論 0 を返すのですよね。

複素数についてはどうですか。一般には z/|z| となる訳ですが、これを返すのでしょうか。

あと、#sgn も alias としてあった方が良いかと思います。

Feature #5523: Numeric#sign の追加

Author: tadayoshi funaba
Status: Open
Priority: Normal
Assignee:
Category: core
Target version: 2.0

負の零なども含め正しく符号を判断するために必要です。実際、complex や
lib/cmath.rb などの中ではこのような判断が必要ですが、標準では提供されて
いないため、不自然なものになっています。

値は-1か+1のいずれかになります。

Issue #5523 has been updated by tadayoshi funaba.

負の零を見分けるのが主眼になっているので、0 も 1 になる事を考えています。
複素数はエラーを考えています。

Common Lisp の signum は複素数にも値を返しますが、これはちょっと望んで
いるのと違いますね。

class Numeric
def signum
if self.zero?
self
else
self / self.abs
end
end
end


Feature #5523: Numeric#sign の追加

Author: tadayoshi funaba
Status: Open
Priority: Normal
Assignee:
Category: core
Target version: 2.0

負の零なども含め正しく符号を判断するために必要です。実際、complex や
lib/cmath.rb などの中ではこのような判断が必要ですが、標準では提供されて
いないため、不自然なものになっています。

値は-1か+1のいずれかになります。

Issue #5523 has been updated by Yui NARUSE.

#2968 の重複なので閉じます

Feature #5523: Numeric#sign の追加

Author: tadayoshi funaba
Status: Open
Priority: Normal
Assignee:
Category: core
Target version: 2.0

負の零なども含め正しく符号を判断するために必要です。実際、complex や
lib/cmath.rb などの中ではこのような判断が必要ですが、標準では提供されて
いないため、不自然なものになっています。

値は-1か+1のいずれかになります。

Issue #5523 has been updated by mrkn (Kenta M.).

Status changed from Open to Closed


Feature #5523: Numeric#sign の追加

Author: tadf (tadayoshi funaba)
Status: Closed
Priority: Normal
Assignee:
Category: core
Target version: 3.0

負の零なども含め正しく符号を判断するために必要です。実際、complex や
lib/cmath.rb などの中ではこのような判断が必要ですが、標準では提供されて
いないため、不自然なものになっています。

値は-1か+1のいずれかになります。