题目:给你一个温度随时间的多项式函数,计算某一时间内的平均温度。
分析:数学题,微积分。直接对f(x)求积分得到f(x)的原函数F(x)+ C,C为某常数;
平均温度即为(F(e)- F(s))/ (e - s)= (F(e)+ C - F(s)- C)/ (e - s)。
说明:╮(╯▽╰)╭。
#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <cmath>
using namespace std;
double a[101],s,e;
double f(double x, int n)
{
double ans = 0.0;
for (int i = 0; i <= n; ++ i)
ans += a[i]*pow(x, i+1)/(i+1);
return ans;
}
int main()
{
int n;
while (~scanf("%d",&n) && n) {
for (int i = n; i >= 0; -- i)
scanf("%lf",&a[i]);
scanf("%lf%lf",&s,&e);
printf("%.3lf\n",(f(e, n)-f(s, n))/(e - s));
}
return 0;
}