6-2 多项式求值 (15 分)
1. 题目摘自
https://pintia.cn/problem-sets/14/problems/734
2. 题目内容
本题要求实现一个函数,计算阶数为n,系数为a[0] ... a[n]的多项式
i)在 点的值。
函数接口定义:
double f( int n, double a[], double x );
其中n是多项式的阶数,a[]中存储系数,x是给定点。函数须返回多项式f(x)的值。
输入样例:
2 1.1
1 2.5 -38.7
输出样例:
-43.1
3. 源码参考
#include <iostream>
#include <math.h>
#include <iomanip>
using namespace std;
#define MAXN 10
double f( int n, double a[], double x );
int main()
{
int n, i;
double a[MAXN], x;
cin >> n >> x;
for ( i=0; i<=n; i++ )
{
cin >> a[i];
}
cout << fixed << setprecision(1) << f(n, a, x) << endl;
return 0;
}
double f( int n, double a[], double x )
{
double s;
s = 0;
for(int i = 0; i <= n; i++)
{
s += a[i] * pow(x, i);
}
return s;
}
网友评论