首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何编写这个运行分区的等式?

如何编写这个运行分区的等式?
EN

Stack Overflow用户
提问于 2019-07-03 04:16:05
回答 1查看 22关注 0票数 0

我不知道该怎么做。我想我写下了正确的东西,但我不明白。

https://imgur.com/a/V6gdDdr

它一直在循环运行,我不知道为什么。

代码语言:javascript
运行
复制
n=9; 
r =0; 
p = 0;
syms x 

v=1.7;

while abs(v-r) > 10^(-5)

    n=n+1;
    r = 0;
    a = 0;
    b= 1/n;

    for i = 1:n

    r = r + exp(((i+1)+exp(i))/2)*(b-a)
    end


    ['done']
end

输出应为85。但我已经有几千人了。我尝试更改for循环中的等式,但我不知道为什么它会给我符号错误。

EN

回答 1

Stack Overflow用户

发布于 2019-07-03 04:56:35

发布的代码存在以下几个问题:

  1. 括号在r=r +中未对齐...exp(i)和exp(i+1)的statement
  2. Instead,你应该使用exp(bi)和exp(b(i+1))来说明给定的间距。
  3. 你的"v“的值应该是确切的答案,应该等于e-1,即1.71828。当你试图收敛到小数点后5位以内的精确解时,使用近似的1.7将是非常有问题的。
  4. 循环应该从0到n-1,这样你就不会将超过整数范围的任何值相加。

代码语言:javascript
运行
复制
n=9; 
r =0; 
p = 0;
v=e-1;

while abs(v-r) > 10^(-5)

    n=n+1;
    r = 0;
    a = 0;
    b= 1/n;

    for i = 0:n-1
      r = r + ((exp(b*(i+1))+exp(b*i))/2)*(b-a);
    end
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56859489

复制
相关文章

相似问题

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