首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >黎曼左和

黎曼左和
EN

Stack Overflow用户
提问于 2014-02-21 21:53:33
回答 3查看 1.8K关注 0票数 0

试图找出如何实现左和。已经做了几个小时了,不知道,请帮忙。我从左边的和得到0.0middleSum是可以的,我使用它来检查leftSum是否工作。但是它不是。*编辑 leftSum方法不是真的,我还在弄清楚,如果有人能帮我解释如何做leftSum,那就太好了

代码语言:javascript
复制
public static double middleSum(Function fct, double a, double b, int n) {
    double deltaX = (b - a) / n;
    double x = a + deltaX / 2.0;
    double sum = 0.0;

    for (int i = 0; i < n; i++) {
        sum = sum + fct.f(x);
        x = x + deltaX;
    }

    return sum * deltaX;
}

public static double lefSum(Function fct, double a, double b, int n) {
    double deltaX = (b - a) / n;
    double x=0.0;
    double sum = 0.0;
    for (int i = 0; i < n; i++) {
        x=(i-1)/n;

        sum += fct.f(x) * deltaX;
    }

    return sum;
}
EN

回答 3

Stack Overflow用户

发布于 2014-02-21 21:55:56

我从左边的和得到0.0

我想是因为这里

代码语言:javascript
复制
x=(i-1)/n;

你在这里执行整数除法。将一侧改为双边,以执行浮点计算。

代码语言:javascript
复制
x=(i-1.0)/n;
票数 2
EN

Stack Overflow用户

发布于 2014-02-21 21:58:50

我不明白为什么您的左代码看起来与右代码不同。我代表你写的权利:

代码语言:javascript
复制
double x = a + deltaX / 2.0;
for (int i = 0; i < n; i++)
{
   sum = sum + fct.f(x);
   x = x + deltaX;
}
return sum * deltaX;

你为什么不写信

代码语言:javascript
复制
public static double lefSum(Function fct, double a, double b, int n)
{
   double deltaX = (b - a) / n;
   double x=a + deltaX / 2.0;
   double sum = 0.0;
   for (int i = 0; i < n; i++)
   {
      sum = sum + fct.f(x);
      x = x + deltaX;
   }
   return sum*deltaX;
}

左边的那笔钱?这是相同的代码,我从x=a开始,而不是移位。

此处的代码写返回:

代码语言:javascript
复制
Java Main2Integrate 
2.666600000000003
2.666600000000003

在我的机器上。

票数 0
EN

Stack Overflow用户

发布于 2014-02-21 22:05:16

左黎曼和

对于左Riemann和,在左端点用它的值来逼近函数,得到多个矩形,基Δx和高度f(a + iΔx)。对i= 0,1,.,n−1执行此操作,并将结果区域相加

Sum

代码语言:javascript
复制
public static double lefSum(Function fct, double a, double b, int n)
{
   double deltaX = (b - a) / n;
   double x=0.0;
  double sum = 0.0;
  for (int i = 0; i < n; i++)
  {


     x = a + i * deltaX;

     sum += fct.f(x) * deltaX;

  }

  return sum;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21945940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档