すらぼうの開発ノート

モバイルアプリエンジニアのメモ

【Swift】任意の少数桁で数値を四捨五入する方法

小数点第二位や三位など、任意の桁で四捨五入する方法を説明する。

方法

次の方法で任意の桁を四捨五入できる。

let digit: Int // 四捨五入したい桁
let val: Double // 四捨五入したい値

let adjuster = Double(truncating: NSDecimalNumber(decimal: pow(10, (digit - 1))))

let answer = round(val * adjuster) / adjuster

例として小数点第三位を四捨五入し、小数点第二位までの値を得る。

let val = 12.5634
let digit = 3

let adjuster = Double(truncating: NSDecimalNumber(decimal: pow(10, (digit - 1))))

let answer = round(val * adjuster) / adjuster

print(answer) // 12.56