首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Matlab中使用递归逼近pi

在Matlab中使用递归逼近pi
EN

Stack Overflow用户
提问于 2019-07-14 01:49:37
回答 1查看 215关注 0票数 0

我应该通过在Matlab中使用递归在链接中使用下面的连分式来近似π。我对递归是个新手,不确定如何让这个片段不断重复。

http://www.geom.uiuc.edu/~huberty/math5337/groupe/expresspi.html

这就是我到目前为止已经尝试过的方法,但我没有得到任何正确的答案。

代码语言:javascript
复制
function approximation = recyclePi(limit)

approximation = rpHelper(limit, -1);

approximation = round(approximation, 10);

end

function out = rpHelper(limit, base)

if limit < 1

    out = base - 1;

else 


    base = base + 2;

    sq = base.^2;

    out = 2 + sq / rphelper(limit - 1, base)

%     out = rpHelper(limit - 1, base);
end


end

请帮帮我!

EN

回答 1

Stack Overflow用户

发布于 2019-07-14 02:54:42

你的代码看起来没问题。假设“正确答案”是pi的输出,您必须执行以下操作:

代码语言:javascript
复制
p=recyclePi(100)
pi=(p-1).^(-1)*4

因为分数以-1 \f25 1+... ^-1,*4开始,因为连分数是4/pi而不是pi

如果这不是你的问题,请澄清你的问题。

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

https://stackoverflow.com/questions/57021546

复制
相关文章

相似问题

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