Function ABS
abs
number => absolute-value
number - 数
absolute-value - 非負の実数
abs
はnumberの絶対値を返却します。
もしnumberが実数のとき、返却値はnumberと同じ型です。
もしnumberが複素数のとき、 返却値はnumberと同じ大きさの正の実数です。 もしnumberの要素が有理数であり、 返却値がちょうど有理数であることが可能であっても、 その返却値は浮動小数にすることができます。 したがって、(abs #c(3 4))
は5
か5.0
のどちらかになり、 実装に依存します。
abs 0) => 0
(abs 12/13) => 12/13
(abs -1.09) => 1.09
(abs #c(5.0 -5.0)) => 7.071068
(abs #c(5 5)) => 7.071068
(abs #c(3/5 4/5)) => 1 or approximately 1.0
(eql (abs -0.0) -0.0) => true (
なし。
なし。
12.1.3.3. 浮動小数の代替可能性の規則
もしnumberが複素数のとき、 結果は次のものと等しくなります。
sqrt (+ (expt (realpart number) 2) (expt (imagpart number) 2))) (
実装はこの公式を全ての複素数に使うべきではありません。 そうではなく非常に大きい要素か非常に小さい要素に対して、 計算の途中でオーバーフローとアンダーフローが起きないよう 特別な処理を行うべきです。