midsql.c

来自「适合大型数值计算代码 现在网络上已经找不到了 购买需要20$」· C语言 代码 · 共 33 行

C
33
字号
#include <math.h>#define FUNC(x) (2.0*(x)*(*funk)(aa+(x)*(x)))float midsql(float (*funk)(float), float aa, float bb, int n){	float x,tnm,sum,del,ddel,a,b;	static float s;	int it,j;	b=sqrt(bb-aa);	a=0.0;	if (n == 1) {		return (s=(b-a)*FUNC(0.5*(a+b)));	} else {		for(it=1,j=1;j<n-1;j++) it *= 3;		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 += FUNC(x);			x += ddel;			sum += FUNC(x);			x += del;		}		s=(s+(b-a)*sum/tnm)/3.0;		return s;	}}#undef FUNC

⌨️ 快捷键说明

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