C语言实习用梯形法或辛普森法求解定积分的值

C语言实习用梯形法或辛普森法求解定积分的值
求一个函数f(x)在[a,b]上的定积分,其几何意义是求f(x)曲线和直线x=a,y=0,x=b所围成的曲边梯形面积。为了近似求出此面积,可将[a,b]区间分成若干个小区间,每个区间的宽度为(b-a)/n,n为区间个数。近似求出每个小的曲边梯形面积,然后将n个小面积加起来,就近似得到总的面积,即定积分的近似值。当n越大(即区间分的越小),近似成都越高。
算法分析:数值积分通常用的算法如下。
①梯形法:用小梯形代替小曲边梯形。
②辛普森法:在小区间范围内,用一条抛物线代替该区间的f(x),将(a,b)区间分成2n个小区间。
xie05712006 1年前 已收到1个回答 举报

sjimtvcail 幼苗

共回答了21个问题采纳率:81% 举报

//梯形法求定积分
#include
#include
//定义被积函数
double func(double x){
return sin(x)*cos(x);
}
void main(){
double a,b,h,x,sum;
int i,n;
printf("Input a b and n: ");
scanf("%lf%lf%d",&a,&b,&n);
h=(b-a)/n;
x=a;
sum=(func(a)+func(b))/2;
for(i=1; i

1年前

9
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.081 s. - webmaster@yulucn.com