到目前为止,这是我的代码。因为我一直得到一个不正确的答案,所以似乎有什么问题。我正在写一个格式化的文本文件:2 3.0 1.0
2 是数组的大小,然后 3.0 和 1.0 是系数。希望我的解释没有遗漏太多。任何帮助将不胜感激。谢谢
double polyeval(double* polyarray, double x, int arraySize)
{
//int result = 0;
if(arraySize == 0)
{
return polyarray[arraySize];
}
//result += x*(polyarray[arraySize]+polyeval(polyarray,x,arraySize-1));
return polyarray[arraySize-1]+ (x* (polyeval(polyarray,x,arraySize-1)));
//return result;
}
int main ()
{
int arraySize;
double x;
double *polyarray;
ifstream input;
input.open("polynomial.txt");
input >> arraySize;
polyarray = new double [arraySize];
for (int a = arraySize - 1; a >= 0; a--)
{
input >> polyarray[a];
}
cout << "For what value x would you like to evaluate?" << endl;
cin >> x;
cout << "Polynomial Evaluation: " << polyeval(polyarray, x, arraySize);
delete [] polyarray;
}
如果我读入一个大小不同的格式的文本文件,它将解决用户给出的任何值 x 的想法