midexp.cpp

来自「提供了6种数值积分方法的c++代码实现: 1 梯形求积法(TRAPZD->」· C++ 代码 · 共 31 行

CPP
31
字号
void midexp(double funk[],double aa,double bb,double s,int n)
{
	double b,a,s,sum,x,del,ddel;
	int it,tnm,j;
	func(x)=funk[-log(x)]/x;
	b=exp(-aa);
	a=0.0;
	if (n==1)
	{
		s=(b-a)*func(0.5*(a+b));
		it=1;
	}
	else
	{
		tnm=it;
		del=(b-a)/(3.0*tnm);
		ddel=del+del;
		x=a+0.5*del;
		sum=0.0;
		for (j=1; j<=it; j++)
		{
			sum=sum+func(x);
			x=x+ddel;
			sum=sum+func(x);
			x=x+del;
		}
		s=(s+(b-a)*sum/(double)tnm)/3.0;
		it=3*it;
	}
} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?