【发布时间】:2017-01-13 16:17:46
【问题描述】:
我们如何从“科学”符号中提取指数和符号?
如果我们用 printf("%lf %e") 打印一个双精度值,它会显示 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()。
【问题讨论】:
-
你能用
abs吗? -
是的,但是我的标志是错误的
-
this 你在找什么吗?
-
不,这不在科学计数法中
-
为什么不只用
bool neg = signbit(N);跟踪符号,然后在计算floor(log10(abs(N)))后重新应用签名?
标签: c++