GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/elisp/Numeric-Conversions.html ・ emacs-doc.conao3.com

3.5 数値変換

整数を浮動小数点数に変換するには、関数 float を使用します。

関数: float number

これは number を浮動小数点数に変換して返します。number が既に浮動小数点数である場合、float はそのまま返します。

浮動小数点数を整数に変換する関数が4つあり、それぞれ丸め方が異なります。いずれの関数も引数 number と、省略可能な引数 divisor を取ります。どちらの引数も整数または浮動小数点数を指定できます。divisor は nil としても構いません。divisor が nil であるか、あるいは省略されている場合、これらの関数は number を整数に変換し、すでに整数である場合はそのまま返します。divisor が nil 以外の場合、number を divisor で除算し、その結果を整数に変換します。divisor が 0(整数か浮動小数点数かを問わず)の場合、Emacs は arith-error エラーを発生させます。

関数: truncate number &optional divisor

これは number を返し、ゼロ方向への丸めによって整数に変換されます。

(truncate 1.2)
     ⇒ 1
(truncate 1.7)
     ⇒ 1
(truncate -1.2)
     ⇒ -1
(truncate -1.7)
     ⇒ -1
関数: floor number &optional divisor

これは number を返し、切り捨て(負の無限大方向)によって整数に変換されます。

divisor が指定された場合、これは mod に対応する除算演算(切り捨て)を用います。

(floor 1.2)
     ⇒ 1
(floor 1.7)
     ⇒ 1
(floor -1.2)
     ⇒ -2
(floor -1.7)
     ⇒ -2
(floor 5.99 3)
     ⇒ 1
関数: ceiling number &optional divisor

これは number を返し、切り上げ(正の無限大方向)によって整数に変換されます。

(ceiling 1.2)
     ⇒ 2
(ceiling 1.7)
     ⇒ 2
(ceiling -1.2)
     ⇒ -1
(ceiling -1.7)
     ⇒ -1
関数: round number &optional divisor

これは number を返し、最も近い整数への丸め処理によって整数に変換されます。2つの整数の中間に位置する値を丸めると、偶数が返されます。

(round 1.2)
     ⇒ 1
(round 1.7)
     ⇒ 2
(round -1.2)
     ⇒ -1
(round -1.7)
     ⇒ -2