どうも、ちょげ(@chogetarou)です。
数値の小数点第N位を四捨五入する方法を紹介します。
方法

数値の小数点第N位を四捨五入するには、Mathを使います。
まず、Mathからround()を呼び出します。
Math.round()の引数に数値を10の(N-1)乗した数値を指定します。
そして、Math.round()の結果を10の(N-1)乗で割ります。
//digits=小数点の位、num=数値
val d = Math.pow(10.0, digits.toDouble() - 1.0);
val result = Math.round(num * d) / d
上記のMath.round()は、数値の小数点第N位を四捨五入した数値を取得します。
使用例
fun roundNum(num: Double, digits: Int): Double {
val d = Math.pow(10.0, digits.toDouble() - 1.0);
return Math.round(num * d) / d;
}
fun main() {
val num = 3.1412;
val num2 = 2.718;
val num3 = 1.4142;
val result = roundNum(num, 2);
val result2 = roundNum(num2, 3);
val result3 = roundNum(num3, 4);
println(result);
println(result2);
println(result3);
}
出力:
3.1
2.72
1.414
コメント