我想编辑下面的Kahan求和c ++代码来计算数组平方和。默认情况下,此代码计算数组的总和。
T reduceCPU(T *data, int size)
{
T sum = data[0];
T c = (T)0.0;
for (int i = 1; i < size; i++)
{
T y = data[i]- c;
T t = sum + y;
c = (t - sum) - y;
sum = t;
}
return sum;
}
我应该如下编辑吗?
T y = data[i]*data[i] - c;
答案 0 :(得分:0)
您提到的编辑是第7行的完整副本。 你也不会只返还总和*,或者我误解了被问的是什么?