2467: 一元多项式求值

来源:互联网 发布:windows怎么看配置输入 编辑:程序博客网 时间:2024/06/05 10:46

2467: 一元多项式求值

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 35  Solved: 22
[Submit][Status][Web Board]

Description

一元多项式是形如f(x)=a0+a1x+a2x2+...+an-1xn-1的式子,其中a0-an-1均为常系数。要求输入x及一元多项式的系数,求出x的值。

Input

首先输入x,随后是不多于15个数据,表示多项式系数。如输入 2.5 3.2 4.3 5.6,代表求多项式f(x)=3.2+4.3x+5.6x2在当x=2.5时的值,即f(2.5)。注意,多项式的最高次指数不定,不超过14次方即可。

Output

输出f(x)的值,结果小数点后保留3位。

Sample Input

2.5 3.2 4.3 5.6

Sample Output

48.950

AC代码:

#include <iostream>#include <iomanip>using namespace std;int main( ){    int n=0,i;    double x, a[15],sum=0;    cin>>x;    //输入x    while(cin>>a[n])n++;   //输入多项式系数    i=n-1;   //最高项的次数为n-1,共n项    while(i>=0)    {        sum=sum*x+a[i--];    }    cout<<setiosflags(ios::fixed)<<setprecision(3)<<sum;    //setiosflags(ios::fixed)主要是将流的格式设置为:fixed(将一个浮点数表示为一个定点整数和小数点和小数部分的格式)。    //然后setprecision(3)表示小数部分的精度为3位    return 0;}


感觉C++用起来方便一些
原创粉丝点击