qtrap.c
来自「numerical recipes in C source codes」· C语言 代码 · 共 25 行
C
25 行
#include <math.h>
#define EPS 1.0e-5
#define JMAX 20
float qtrap(float (*func)(float), float a, float b)
{
float trapzd(float (*func)(float), float a, float b, int n);
void nrerror(char error_text[]);
int j;
float s,olds;
olds = -1.0e30;
for (j=1;j<=JMAX;j++) {
s=trapzd(func,a,b,j);
if (fabs(s-olds) < EPS*fabs(olds)) return s;
if (s == 0.0 && olds == 0.0 && j > 6) return s;
olds=s;
}
nrerror("Too many steps in routine qtrap");
return 0.0;
}
#undef EPS
#undef JMAX
/* (C) Copr. 1986-92 Numerical Recipes Software "U,6VV'. */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?