首页 > 解决方案 > Matlab Precision只有8位?

问题描述

引用自:https ://www.mathworks.com/help/symbolic/increase-precision-of-numeric-calculations.html

默认情况下,MATLAB® 使用 16 位精度。

但是为什么当我写900000000+2(9 后 8 个零)它返回900000002但写900000000+2(9 后 9 个零)返回时9.0000e+09 这不是 8 位精度?

标签: matlabmathprecisionmatlab-guidedigits

解决方案


您使用该format命令来控制要打印的位数。help format查看更多详细信息。尝试format long g并重新运行您的命令以查看更多数字。

默认情况下,MATLAB® 使用 16 位精度。

这是指计算精度,而不是打印精度。默认情况下,MATLAB 将变量定义为 double,通常精确到 16 位。但是您可以在较低的版本中打印这样的双精度数(由格式命令控制)


推荐阅读