以前做过这道题目,不过当时是找的牛人推出来的公式,,昨天又重新做了下,自己也推出来一个公式 ^_^。。

高数没能学好,一开始只是以为定积分一下就ok了呢。。

没想到定积分是求两点和曲线和x轴所围成的面积,最后再减去一个梯形的面积就行了。。

先根据所给的点求出a,b,c;

代码:

# include<stdio.h>
# include<math.h>
int main()
{
    int t;
    double x1,y1,x0,y0,x2,y2,a,b,c,ans;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%lf%lf%lf%lf%lf%lf",&x0,&y0,&x1,&y1,&x2,&y2);
        a=(y1-y0)/((x1-x0)*(x1-x0));
        b=-2*a*x0;
        c=y0+a*x0*x0;

        ans=1.0/3*a*x2*x2*x2+1.0/2*b*x2*x2+c*x2 - (1.0/3*a*x1*x1*x1+1.0/2*b*x1*x1+c*x1) - (y2+y1)*(x2-x1)/2;
            printf("%.2lf\n",ans);
    }
    return 0;
}
posted on 2011-04-12 10:57  奋斗青春  阅读(438)  评论(0编辑  收藏  举报