a0十x(a1+ x(a2 +...+ x(an-1 + xan)...))
使用Horner法,我们可以用下面的代码实现多项式求值:
/* Apply Horner's method */ double polyh(double a[],double x,long degree) { long i; double result=a[degree] ; for (i=degree-1; i>= 0; i--) result = a[i] + x*result; return result; }A.对于次数n,这段代码执行多少次加法和多少次乘法运算?
B.在我们的参考机上,算术运算的延迟如图5-12所示,测量这个函数的CPE等于8.00。根据由于实现函数第7行的操作迭代之间形成的数据相关,解释为什么会得到这样的CPE。