📄 simpson.cpp
字号:
#include<iostream>
#include<math.h>
using namespace std;
double funcA(double x)
{
return x*cos(x*x);
}
double funcB(double x)
{
return x*sin(x*x);
}
double funcC(double x)
{
return x*x*cos(x);
}
double funcD(double x)
{
return x*x*sin(x);
}
double simpson(double a,double b,int n,double(*f)(double))
{
double h=(b-a)/n;
double xi0=(*f)(a)+(*f)(b);
double xi1=0;
double xi2=0;
for(int i=1;i<n;i++)
{
double x=a+i*h;
if(i%2==0)
{
xi2=xi2+(*f)(x);
}
else
{
xi1=xi1+(*f)(x);
}
}
double xi=h*(xi0+2*xi2+4*xi1)/3;
return xi;
}
int main()
{
double a,b;
int n=4;
//cin>>a;
//cin>>b;
//cin>>n;
while(n<30)
{
cout<<"The result of integral is:"<<simpson(0,3.141592653,n,funcD)<<endl;
n+=2;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -