Matlab数据格式问题如图所示,为什么第一次出错,第二次的正确.

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/03 17:02:48
Matlab数据格式问题如图所示,为什么第一次出错,第二次的正确.

Matlab数据格式问题如图所示,为什么第一次出错,第二次的正确.
Matlab数据格式问题

如图所示,为什么第一次出错,第二次的正确.

Matlab数据格式问题如图所示,为什么第一次出错,第二次的正确.
>> 2e-2/2e-5
ans =
1.0000e+003
>> 2e-2/2.5e-5
ans =
800
因为浮点数运算存在舍入误差
2e-2/2e-5 理论上结果是 1000
但得到的结果实际上不是精确的1000
而是1000加上一个绝对值很小的数,也就是浮点运算的误差
那么结果就不是整数,所以会报错
而2e-2/2.5e-5的计算结果,刚好能够取到理论值800,所以就不报错
用 zeros(round(2e-2/2e-5))先取整一下就好