从科学记数法中获得指数

时间:2017-01-13 16:17:46

标签: c++

我们如何从“科学”符号中提取指数和符号?

如果我们用printf(“%lf%e”)打印一个double值,它会显示par ex。:

   normal   scientific
   ------   ----------
   -888.3   -8.88e2    
    1.23     1.23e0    
    3.001    3.1e-1

解决方案指向How to get Exponent of Scientific Notation in Matlab

x = floor(log10(N))

仅适用于正值N.使用-N时,它显示-nan(ind)。显然,不允许使用具有负值的Log10()。

1 个答案:

答案 0 :(得分:2)

你不关心号码的标志,你只需要指数,所以你可以安全地摆脱这个标志:

log10(abs(N))

abs返回N的绝对值,它始终为非负数,因此可用作log10的参数。