利用梯形法计算定积分
其中, f(x)=x3+3x2-x+2。
算法思想
根据定积分的定义分析可得:[x0,x1],[x1,x2],···,[xn-1,xn],将定积分的区间 [a,b] 分成 n 个子区间,其中:
若右边的极限存在,其极限值即为定积分的值。
理论上区间分得越细,越逼近定积分实际的值,一般采用梯形法近似计算定积分的值,把区间 [a,6] 划分成 n 等份,则任意第 f 个小梯形的面积为 (上底+下底)×高/2,si=H×[f(xi)-1)+f(xi)]/2,其中 xi+1=a+(i+1)×H;xi=a+i×H;H=(b-a)/n。
该实例问题实际上转换为求 n 等份梯形的面积累计和。
程序代码
#include <stdio.h>
#include <math.h>
float collect(float s,float t,int m,float (*p)(float x));
float fun1(float x);
float fun2(float x);
float