回 帖 发 新 帖 刷新版面

主题:[讨论]求解释

试编写算法求一元多项式的值 的值 ,并确定算法中每一语句的执行次数和整个算法的时间复杂度。注意选择你认为较好的输入和输出方法。本题的输入为 , 和 ,输出为 。
解:
#include<iostream.h>
#include<stdlib.h>
#define N  10
double polynomail(int a[],int i,double x,int n);
int main()
{
    double x;
    int n,i;
    int a[N];
    cout<<"输入变量的值x:";
    cin>>x;
    cout<<"输入多项式的阶次n:";
    cin>>n;
    if(n>N-1) exit(0);
    cout<<"输入多项式的系数a[0]--a[n]:";
    for(i=0;i<=n;i++) cin>>a[i];
    cout<<"The polynomail value is "<<polynomail(a,n,x,n)<<endl;
    return 0;
}
double polynomail(int a[],int i,double x,int n)
{
    if(i>0) return a[n-i]+polynomail(a,i-1,x,n)*x;
    else return a[n];
}
最后的这个递归算法没看懂,请大虾指教。

回复列表 (共1个回复)

沙发


已解决,很好的思路

我来回复

您尚未登录,请登录后再回复。点此登录或注册