Next: Arithmetic Operations, Previous: Comparison of Numbers, Up: Numbers [Contents][Index]
整数を浮動少数に変換するには、関数float
を使用します。
これは浮動小数に変換されたnumberをreturnします。すでにnumberが浮動小数の場合、float
はそれを変更せずにreturnします。
浮動小数点数を整数に変換する関数が4つあります。これらは浮動小数点数を丸める方法がことなります。これらはすべて引数numberと、オプション引数としてdivisorを受け取ります。引数は両方とも整数または浮動小数点数です。divisorがnil
のこともあります。divisorがnil
または省略された場合、これらの関数はnumberを整数に変換するか、それが既に整数の場合は変更せずにreturnします。divisorが非nil
の場合、これらの関数はnumberをdivisorで除してから、その結果を整数に変換します。divisorが(整数か浮動小数かに関わらず)0の場合、Emacsはarith-error
エラーをシグナルします。
これは0に向かって丸めることにより整数に変換したnumberをreturnします。
(truncate 1.2) ⇒ 1 (truncate 1.7) ⇒ 1 (truncate -1.2) ⇒ -1 (truncate -1.7) ⇒ -1
これは、下方(負の無限大に向かって)に丸めることにより整数に変換したnumberをreturnします。
divisorが指定された場合、mod
に相当する種類の除算演算を使用して、下方に丸めを行ないます。
(floor 1.2) ⇒ 1 (floor 1.7) ⇒ 1 (floor -1.2) ⇒ -2 (floor -1.7) ⇒ -2 (floor 5.99 3) ⇒ 1
これは、上方(正の無限大に向かって)に丸めることにより整数に変換したnumberをreturnします。
(ceiling 1.2) ⇒ 2 (ceiling 1.7) ⇒ 2 (ceiling -1.2) ⇒ -1 (ceiling -1.7) ⇒ -1
これは、もっとも近い整数に向かって丸めることにより整数に変換したnumberをreturnします。2つの整数から等距離にある値の丸めでは、偶数の整数をreturnします。
(round 1.2) ⇒ 1 (round 1.7) ⇒ 2 (round -1.2) ⇒ -1 (round -1.7) ⇒ -2