C++ 程序实现辛普森 3/8 法则
在本教程中,我们将讨论一个程序,来实现辛普森的 ⅜ 法则。
辛普森的 ⅜ 法则用于进行数值积分。此方法最常见的用例是执行定积分的数值逼近。
在此方法中,图表上的抛物线用于执行逼近。
示例
#include<iostream> using namespace std; //function that is to be integrated float func_inte( float x){ return (1 / ( 1 + x * x )); } //calculating the approximations 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
广告