C ++程序实现Simpson的3/8规则

在本教程中,我们将讨论实现SImpson'规则的程序。

Simpson的⅜规则用于进行数值积分。此方法最常见的用例是执行定积分的数值逼近。

在此,图上的抛物线用于执行近似。

示例

#include<iostream>
using namespace std;
//要集成的功能
float func_inte( float x){
   return (1 / ( 1 + x * x ));
}
//计算近似值
float func_calculate(float lower_limit, float upper_limit, int
interval_limit ){
   float value;
   float interval_size = (upper_limit - lower_limit) / interval_limit;
   float sum = func_inte(lower_limit) + func_inte(upper_limit);
   for (int i = 1 ; i < interval_limit ; i++) {
      if (i % 3 == 0)
         sum = sum + 2 * func_inte(lower_limit + i * interval_size);
      else
         sum = sum + 3 * func_inte(lower_limit + i * interval_size);
   }
   return ( 3 * interval_size / 8 ) * sum ;
}
int main(){
   int interval_limit = 8;
   float lower_limit = 1;
   float upper_limit = 8;
   float integral_res = func_calculate(lower_limit,
   upper_limit, interval_limit);
   cout << integral_res << endl;
   return 0;
}

输出结果

0.663129