可能重复:
将数字四舍五入到最接近的 3 的倍数
我需要一个 javascript 调用,它将数字四舍五入到最接近的 12 的倍数。
一些例子:
1 -> 12
7 -> 12
14 -> 24
27 -> 36
有谁知道这样做的好方法?我能想到的只是“如果在 1-11 之间,则为 12。如果在 13-23 之间,则为 24,等等。” 但这似乎效率不高。
可能重复:
将数字四舍五入到最接近的 3 的倍数
我需要一个 javascript 调用,它将数字四舍五入到最接近的 12 的倍数。
一些例子:
1 -> 12
7 -> 12
14 -> 24
27 -> 36
有谁知道这样做的好方法?我能想到的只是“如果在 1-11 之间,则为 12。如果在 13-23 之间,则为 24,等等。” 但这似乎效率不高。
var n = 13;
var next = Math.ceil(n/12) * 12;
对于正整数:
ceiling(n/12.0) * 12
对于负整数:
floor(n/12.0) * 12
对于零:
return 12
function nearest(i) {
return Math.floor((i-1)/12)*12+12;
}
function roundIt(n) {
return Math.ceil(n / 12) * 12;
}