最接近10的幂

时间:2013-11-08 23:02:22

标签: math rounding logarithm

我正在试图找出如何将数字(大于0)四舍五入到最接近的10的幂。

示例:

roundUp(23.4) = 100
roundUp(2.34) = 10
roundUp(.234) = 1
roundUp(0.0234) = 0.1
roundUp(0.00234) = 0.01

对于大于1的数字,我相信这是有效的:

10^(ceil(log10(x)))

但对于0到1之间的数字,我不确定如何得出答案。

2 个答案:

答案 0 :(得分:2)

糟糕。我没有意识到这个功能实际上适用于0和0之间的数字。这是一个大脑屁,我看到log10(x)的负数,并且假设我不能拿10 ^。

继续。

答案 1 :(得分:0)

除以10,取上限,乘以10.

123 -> 12.3 -> 13 -> 130
4 -> 0.4 -> 1 -> 10
编辑:啊,误解了你的要求。我没有意识到你想要最接近十的力量,无论是积极的还是消极的。