【c/c++】梯形法求定积分
程序员文章站
2024-02-02 22:06:28
...
#include<stdio.h>
int main(){
float de_integral(float a,float b,float(*p)(float));
float f(float x);
printf("%f",de_integral(1,0,f));
return 0;
}
float f(float x){
return(x*x+5*x+7);
}
float de_integral(float a,float b,float(*p)(float)){//积分上限a,积分下限b
int i,l; //梯形法求定积分
float n=0.001,s=0;;//n表示划分的单位宽度,n是矩形的宽度
l=(a-b)/n; //l表示有多少个单位宽度
for(i=0;i<l;i++)s+=((*p)(b+n*i)+(*p)(b+n*(i+1)))*n/2;
return s;
}
上一篇: 更改localhost为其他名字的方法