四舍五入到指数尺度

时间:2014-07-19 02:18:01

标签: math

我需要将浮点数舍入到指数刻度,例如0.1,0.2,0.4,0.8,1.6,3.2等。但是我使用的表达式语言只能访问算术和函数,例如exp (x),log(x),log10(x),sqrt(x),sqr(x)和pow(x,y),因此没有程序/脚本。

有可能吗?

1 个答案:

答案 0 :(得分:1)

我们从:

开始
  

0.1 0.2 0.4 0.8 1.6等。

我们乘以10:

  

1 2 4 8 16等。

我们记录日志并除以log 2:

  

0 1 2 3 4等。

我们可以解决这个问题。

然后我们撤消一切。

exp(round(log(val * 10) / log(2)) * log(2)) / 10

round()的实现留给读者。