我有Matlab的问题。主要是5*10^-15!=5e-15
。
根据我如何声明一个数字(e
或10^
),保存的数字会有所不同(5.000000000000001
与5.000000000000000
)。它使用计算声明的值进行比较会产生问题(声明为10 ^,matlab将计算保存为e)。
任何人都知道为什么会这样?这是某种matlab的近似值?
现在我可以用科学记数法声明所有内容,但是如果我想将指数变为变量A
,我会遇到写作问题,例如5eA
。
感谢您的回答:)
答案 0 :(得分:0)
它与精度误差和公差有关。处理它的方法是比较差异而不是容忍水平,ex;
eps = 0.00000001
if (abs(a-b) < eps) //success