trapzd.c

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

C
23
字号
#define FUNC(x) ((*func)(x))float trapzd(float (*func)(float), float a, float b, int n){	float x,tnm,sum,del;	static float s;	int it,j;	if (n == 1) {		return (s=0.5*(b-a)*(FUNC(a)+FUNC(b)));	} else {		for (it=1,j=1;j<n-1;j++) it <<= 1;		tnm=it;		del=(b-a)/tnm;		x=a+0.5*del;		for (sum=0.0,j=1;j<=it;j++,x+=del) sum += FUNC(x);		s=0.5*(s+(b-a)*sum/tnm);		return s;	}}#undef FUNC

⌨️ 快捷键说明

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