24小时热门版块排行榜    

CyRhmU.jpeg
查看: 748  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

haijian

金虫 (小有名气)

[交流] 【求助】急求一个关于求和的算法

(1/n) n取从1到无穷,累加(1+1/2+1/3+1/4+.....+1/n),怎样用MATLAB计算使数值达到60以上?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

change0618

铁杆木虫 (著名写手)

方丈大师

★ ★
ctgu_zheng(金币+2):辛苦了,欢迎常来交流。。。 2010-10-13 23:20:37
你可以查看一下双伽玛函数定义
http://zh.wikipedia.org/zh-cn/%E ... B%E5%87%BD%E6%95%B0
有一个递推关系


所以你的式子可用以下计算:

>> fsolve(@(n)psi(n+1)-psi(1)-60,exp(60))


Optimization stopped.
Unrecognized exitflag input to createExitMsg.

ans =

  1.1420e+026

>> vpa(ans,28)

ans =

114200738981568423454048256.0

>> ceil(ans)

ans =

114200738981568423454048256


实际上由于精度原因,上面的计算结果并不一定对,你可以提高计算精度试一下,毕竟n值过大的话,都需要10^-50的精度了。

[ Last edited by change0618 on 2010-10-14 at 10:51 ]
4楼2010-10-13 19:14:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

change0618

铁杆木虫 (著名写手)

方丈大师


hiqun(金币+1):感谢应助 2010-10-13 16:17:55
haijian(金币+5):great! 但是如果我想做成一个function,然后调用!谢谢 2010-10-13 17:17:10
真有想象力,高等数学上讲1/x的积分是lnx,那么lnx=60的话,x=1.1420e+026

>> vpa(exp(60),28)

ans =

= 114200738981568423454048256

>>> syms n
> symsum(1/n)

ans =

psi(n)

>> vpa(psi(114200738981568423454048256),28)

ans =

60.0

[ Last edited by change0618 on 2010-10-13 at 12:18 ]
2楼2010-10-13 12:09:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nneerr123

禁虫 (小有名气)


hiqun(金币+1):感谢应助 2010-10-13 16:18:04
haijian(金币+1):Thank you! But this programme need too much time!I need more easy one! 2010-10-13 17:12:42
本帖内容被屏蔽

3楼2010-10-13 13:14:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见