多项式评估准确性,乘法与除法

Any*_*orn 1 algorithm floating-accuracy numerical-analysis

让我们说我有x中的多项式除以x的幂:

p = (a + x(b + x(c + ..)))/(x**n)
Run Code Online (Sandbox Code Playgroud)

除了效率,这将是更准确的数值计算,上面或使用除法:

p = (((a/x + b)/x + c)/x + ...)
Run Code Online (Sandbox Code Playgroud)

谢谢

Jon*_*ler 5

理论上,应该没有任何差别 - 如果用'无限'精度精确计算这些值.

Kernighan和Plauger在其古老而又出色的书" 编程风格元素 "中指出:

一位聪明的程序员曾经说过,"浮点数就像一堆沙子;每次移动一个,你就会失去一点沙子并获得一点污垢".

该部门的整体运营量略有减少,这意味着失去沙子和获取污垢的机会略少.

详细的分析可能需要查看系数(a,b,c等)以及x的值 - 当x接近零时,当x很大时可能无法正常工作,反之亦然.