math_round

指定された数値を指定した小数点以下の桁数に丸めます。


taiseiue | 2025-01-08

定義

名前空間: Alice.Math
アセンブリ: Losetta.Runtime.dll
ソースコード: Alice.Math.cs

math_round(number,number)

指定された数値を指定した小数点以下の桁数に丸めます。 四捨五入時には銀行型丸めを使用します。

AliceScript
namespace Alice.Math;
public number math_round(number value, number digits = 0);
引数
value 丸めたい対象の数値
digits 戻り値の小数部の桁数。既定値は0で、0以上15未満の整数である必要があります
戻り値
number 小数点以下の桁数がdigits以下のvalueに近い数値

対応
AliceScript RC1、RC2、GM、2.0、2.1、2.2、2.3、3.0、4
AliceSister GM、2.0、2.1、2.2、2.3、3.0、4
Losetta 0.8、0.9、0.10、0.11

math_round(number,bool?)

指定した丸め規則を用いて指定された数値を整数に丸めます。

AliceScript
namespace Alice.Math;
public number math_round(number value, bool? roundingMode = null);
引数
value 丸めたい対象の数値
roundingMode 銀行型丸めを使用する場合はnull、0からもっとも遠い方向に丸める場合はtrue、0にもっとも近い方向に丸める場合はfalse
戻り値
number valueに等しい小数部の桁数を格納するdigitsにもっとも近い数値。

対応
AliceScript 3.0、4
AliceSister 3.0、4
Losetta 0.10、0.11

実装に関する注意

このオーバーロードはAliceSisterでは仕様が異なります。 詳しくは説明をご覧ください。

math_round(number,number,bool?)

指定した丸め規則を用いて指定された数値を指定した小数点以下の桁数に丸めます。

AliceScript
namespace Alice.Math;
public number math_round(number value, number digits = 0, bool? roundingMode = null);
引数
value 丸めたい対象の数値
digits 戻り値の小数部の桁数。既定値は0で、0以上15未満の整数である必要があります
roundingMode 銀行型丸めを使用する場合はnull、0からもっとも遠い方向に丸める場合はtrue、0にもっとも近い方向に丸める場合はfalse
戻り値
number valueに等しい小数部の桁数を格納するdigitsにもっとも近い数値。

対応
AliceScript 3.0、4
AliceSister 3.0、4
Losetta 0.10、0.11

実装に関する注意

このオーバーロードはAliceSisterでは仕様が異なります。 詳しくは説明をご覧ください。

説明

digitsの値は0から15以内でなければなりません。 AliceScriptの数値型でサポートされる小数点以下の数値は最大15桁です。

valueの値がmath_NaNの場合、この関数はmath_NaNを返します。またvalueの値がmath_Infinityの場合、この関数もmath_Infinityを返し、valueの値がmath_NegativeInfinityの場合、この関数もmath_NegativeInfinityを返します。

小数部を切り上げたいときはmath_ceilingを、切り捨てたいときはmath_floorまたはmath_truncateを使用してください。

AliceSisterでは、roundingModetrueの場合でも銀行型丸めを使用します。 AliceSisterでは0からもっとも遠い方向に丸めることはできません。

次の例ではさまざまな方法を使って、小数点以下2桁の数値を小数点以下1桁に丸めます。

AliceScript
using Alice.Math;

print(math_round(3.45, 1, null));  //出力 : 3.4
print(math_round(3.45, 1, true));  //出力 : 3.5
print(math_round(3.47, 1, false)); //出力 : 3.5