矩形方法C ++

时间:2011-12-01 16:05:23

标签: c++ integral

我从here复制了一个示例项目,但我不明白它的一部分:(i - 0.5)。为什么要计算(i - 0.5)

double rectangle_integrate(double a, double b, int subintervals, double (*function)(double))
{
   double result;
   double interval;
   int i;

   interval=(b-a)/subintervals;
   result=0;

   for(i=1;i<=subintervals;i++){
      result+=function(a+interval*(i-0.5));
   }
   result*=interval;

   return result;
} 

1 个答案:

答案 0 :(得分:6)

它代表间隔的中间。当i为1时,间隔为0到1,其中0.5为中间。等