我完全陷入了困境,我不知道从哪里开始。以n间隔集成a和b之间的函数
我必须整合与n个间隔a和b之间的函数C.
我只有函数定义:
float funcintegrate(float (*f)(float x), float a, float b, int n);
我需要使用梯形法。
编辑:
感谢所有为你提示。我现在有答案!
在间隔数值积分的函数[A,B]使用梯形法(或规则):
float funcintegrate(float (*f)(float x), float a, float b, int n);
int i;
double x;
double k = (b - a)/n;
double s = 0.5 * (f(a) + f(b));
for (i = 1; i < n; i++) {
x = a + k * i;
s = s + f(x);
}
return s * k;
}
请向我们展示您在寻求帮助之前尝试过的方法。这是作业吗?如果是,请添加标签。 – dasblinkenlight 2011-12-18 15:54:16
尝试使用C语言中的数字食谱(它可以免费获得),用于众多集成实现。 – Omar 2011-12-18 15:55:15
当'double'合适时,不要使用'float'。 – pmg 2011-12-18 15:57:54