浮点数*整数 整数*浮点数 哪个更精确?为什么?比如9898789989 * 0.000000997889 合0.000000997889* 9898789989 哪个更精确?计算机表示的精度是有限的,我们看到的运算结果两个都一样,但实际这两个值是

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 05:39:22

浮点数*整数 整数*浮点数 哪个更精确?为什么?比如9898789989 * 0.000000997889 合0.000000997889* 9898789989 哪个更精确?计算机表示的精度是有限的,我们看到的运算结果两个都一样,但实际这两个值是
浮点数*整数 整数*浮点数 哪个更精确?为什么?
比如9898789989 * 0.000000997889 合0.000000997889* 9898789989 哪个更精确?计算机表示的精度是有限的,我们看到的运算结果两个都一样,但实际这两个值是不一样的,怎么看出来那个更精确?

浮点数*整数 整数*浮点数 哪个更精确?为什么?比如9898789989 * 0.000000997889 合0.000000997889* 9898789989 哪个更精确?计算机表示的精度是有限的,我们看到的运算结果两个都一样,但实际这两个值是
或许要分两种情况:
1、在每次乘法结果不会超过精度限制的情况下,本身精度高的浮点数应该放在被乘数的位置,精度低的放在乘数的位置.精度低大致对应数字位数少,也就意味着乘法次数少;如果认为每次乘法的系统误差水平稳定,乘数的位数少就意味者产生乘法误差的次数少,总体上误差也可以认为更小些,比如0.234233 * 0.1
2、在其中一个数的精度接近精度限制的情况下,如果它放在被乘数的位置上,每次乘法的结果将更有可能超过精度限制,产生截断误差.所以精度高的数应该放在乘数的位置.比如0.1*0.23423423423234