快捷搜索:  汽车  科技

8个常用积分公式(积分近似计算之梯形公式)

8个常用积分公式(积分近似计算之梯形公式)梯形公式

对于积分区间[a b],若

8个常用积分公式(积分近似计算之梯形公式)(1)

则成立

8个常用积分公式(积分近似计算之梯形公式)(2)

梯形公式

如下图所示,被积分函数f(x)在区间[a b]的积分值约为各个小梯形的面积之和,而且分割数n越大则近似误差越小。

8个常用积分公式(积分近似计算之梯形公式)(3)

通过直线逼近实际曲线

8个常用积分公式(积分近似计算之梯形公式)(4)

梯形公式

C语言程序实现梯形公式计算积分
  • 计算积分

8个常用积分公式(积分近似计算之梯形公式)(5)

  • 代码

//trapez.c #include <stdio.h> #include <math.h> /*函数定义*/ double f(double x) { return (1.0-x)*exp(-1*x); } /*梯形公式计算积分*/ double trapez( double a double b int n) { double h = (b -a) / n; double s = 0.0; double x; int i; s = ((f(a) f(b)) / 2) * h; for( i = 1; i < n; i ) { x = a h * i; s = f(x) * h; } return s; } int main(void) { //积分区间[a b] double a = -1.0 b = 1.0; //区间分割数 int N[5]={10 20 30 50 100}; int i = 0; for( i = 0; i < 5; i ) printf("[=等分]积分近似值:\ \n\tI = %.5lf\n" N[i] trapez(a b N[i])); return 0; }

  • 编译・执行

$ gcc -lm -o trapez trapez.c $ ./trapez [ 10等分]积分近似值: I = 3.11209 [ 20等分]积分近似值: I = 3.09265 [ 30等分]积分近似值: I = 3.08904 [ 50等分]积分近似值: I = 3.08720 [100等分]积分近似值: I = 3.08642

猜您喜欢: