题目描述
蒜术师知道你很聪明,想让你计算一个多项式的值。
对于多项式f(x) = ax3 + bx2 + cx + d和给定的x,a,b,c,d,计算f(x)的值。
输入格式
输入仅一行,包含 5 个实数,分别是 x,及参数 a,b,c,d 的值,每个数都是绝对值不超过 100 的浮点数。数与数之间以一个空格分开。
输出格式
输出一个实数,即 f(x) 的值,保留到小数点后 7 位。
Sample Input
2.31 1.2 2 2 3
Sample Output
33.0838692
思路
定义五个浮点型的变量x,a,b,c,d,依次读入并存储,可以定义一个浮点变量ans,并为ans赋值,或是写一个函数,函数的返回值即为题目中要求的式子。最后以浮点数形式输出,注意保留小数点后七位。
C语言代码:
#include<stdio.h>
int main()
{
double x,a,b,c,d; //定义浮点型变量x,a,b,c,d
scanf("%lf %lf %lf %lf %lf",&x,&a,&b,&c,&d); //从读入数据到相应的变量
double ans=a*x*x*x+b*x*x+c*x+d; //计算f(x)同时把值赋给新定义的浮点型变量ans
printf("%.7lf",ans); //以浮点数形式输出ans的小数点后七位
return 0;
}
C++代码:
#include<bits/stdc++.h>
using namespace std;
double a, b, c, d, x;
double f(double x)
{
return a * x * x * x + b * x * x + c * x + d;
}
int main()
{
while(cin >> x >> a >> b >> c >> d)
printf("%.7lf\n", f(x));
return 0;
}