在本教程中,我们将讨论实现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