[算法][求积分][复合辛普森公式]

简介:


 

 

复制代码
 1 //这里f()为被积函数,输入a,b为积分上下限,
 2 //eps为计算精度[这里要注意假收敛,一般设小一点好]
 3 #include <iostream>
 4 #include <cmath>
 5 #define  eps 1e-6
 6 using namespace std;
 7 double f(double x){
 8     return sqrt(1+cos(x)*cos(x));
 9 }//被积函数
10 double Sn(double a,double b,double n){
11     double h=(a+b)/(2*n);
12     double sum=0;
13     for(int k=1;k<=n;k++){
14         sum+=2*f(a+(2*k-1)*h);
15         sum+=f(a+2*k*h);
16     }
17     sum=(sum*2+f(a)-f(b))*h/3;
18     return sum;
19 }//辛普森公式
20 double Solve(double a,double b){
21     int i=1;
22     double S1n=Sn(a,b,i);
23     double S2n=Sn(a,b,2*i);
24     while(fabs(S1n-S2n)>eps){
25         cout<<"n = "<<i<<"  S1 = "<<S1n<<"  S2 = "<<S2n<<'\n';
26         i++;
27         S1n=S2n;
28         S2n=Sn(a,b,2*i);
29     }
30     return S2n;
31 }
32 int main(){
33     cout<<Solve(0,48)<<'\n';
34 }
复制代码


相关文章
|
5月前
|
算法 搜索推荐
【算法与数据结构】归并排序的代码实现(详细图解)以及master公式的讲解
【算法与数据结构】归并排序的代码实现(详细图解)以及master公式的讲解
53 0
|
3月前
|
存储 算法 搜索推荐
Java常见算法-算法与程序、公式、数据结构的区别
算法、程序、公式和数据结构是计算机科学中的基本概念,它们之间有着密切的联系,但各自有着独特的含义和作用。
|
4月前
|
人工智能 算法 BI
C++深度优先(DFS)算法的应用:收集所有金币可获得的最大积分
C++深度优先(DFS)算法的应用:收集所有金币可获得的最大积分
基于MATLAB的麻雀搜索算法SSA代码解释(对照论文公式)
基于MATLAB的麻雀搜索算法SSA代码解释(对照论文公式)
|
10月前
|
机器学习/深度学习 算法
学习笔记: 机器学习经典算法-空间内一点到超平面的距离推广公式
机器学习经典算法-个人笔记和学习心得分享
89 0
|
算法
银行算法问题积分抽奖解答
银行算法问题抽奖解答
64 0
银行算法问题积分抽奖解答
|
算法 BI
m基于遗传优化算法的公式参数拟合matlab仿真
m基于遗传优化算法的公式参数拟合matlab仿真
109 0
m基于遗传优化算法的公式参数拟合matlab仿真
|
XML 机器学习/深度学习 人工智能
【机器学习】集成学习(Boosting)——梯度提升树(GBDT)算法(理论+图解+公式推导)
【机器学习】集成学习(Boosting)——梯度提升树(GBDT)算法(理论+图解+公式推导)
229 0
【机器学习】集成学习(Boosting)——梯度提升树(GBDT)算法(理论+图解+公式推导)
|
机器学习/深度学习 人工智能 算法
【机器学习】集成学习(Boosting)——AdaBoost提升算法(理论+图解+公式推导)
【机器学习】集成学习(Boosting)——AdaBoost提升算法(理论+图解+公式推导)
182 0
【机器学习】集成学习(Boosting)——AdaBoost提升算法(理论+图解+公式推导)
|
机器学习/深度学习 人工智能 算法
【机器学习】线性分类——感知机算法(理论+图解+公式推导)
【机器学习】线性分类——感知机算法(理论+图解+公式推导)
164 0
【机器学习】线性分类——感知机算法(理论+图解+公式推导)