1+1/2+1/3+...+1/n的和杂算?

匿名用户
2013-10-27
展开全部
这个问题是世界100个难题中,始终没有解决的最后的几个难题之一。在这一点上它和著名的“1+1”相当。但是它没有大的价值,这又和“1+1”不同。它已经有了近似公式:1+1/2+1/3+1/4++1/n~=lnn+C(其中lnn是n的自然对数;C=0.577216……是一个专门用来计算调和数列的前n项和的无理数,叫做欧拉常数)迄今为止,没有人算出过它的通项公式。连它是发散的级数这个性质,也是很晚才得出的。后来发现,再给它加个项,-ln(n)的情况下,发现它是收敛的级数,在n趋向于无穷大的时候,定义它的极限为r(咖玛),称为欧拉常数。1+1÷2+1÷3+.......+1÷n近似的等于ln(n)+r,在n趋向于无穷大时取等号. 当n很大时,有:1+1/2+1/3+1/4+1/5+1/6+...1/n = 0.57721566490153286060651209 + ln(n)//C++里面用log(n),pascal里面用ln(n)
0.57721566490153286060651209叫做欧拉常数
1+1/2+1/3+…+1/n是没有好的计算公式的,所有计算公式都是计算近似值的,且精确度不高。
自然数的倒数组成的数列,称为调和数列.人们已经研究它几百年了.但是迄今为止没有能得到它的求和公式只是得到它的近似公式(当n很大时):

1+1/2+1/3+......+1/n≈lnn+C(C=0.57722......一个无理数,称作欧拉初始,专为调和级数所用)

得到公式, 用C++实现就容易了 long double Sn( const unsigned int& n ) { const long double euler = 0.57721566490153286060651209;
return ( log( static_cast<long double>(n) ) + euler );
}
一个可以计算欧拉常数的递推公式的
euler= 1 + 1/2 + ... + 1/m -ln(m) - 1/(2m) + 1/(12m^2) - 1/(120m^4) + 1/(252m^6)- o(m)
其中
|o(m)| <= 22.5*(m * PI)^(-7)
因此只要选择一个合适的m使o(m)不影响精度即可

例如,当m=5的时候,精度高于1E-7.
匿名用户
2013-10-27
展开全部
是发散数列,加起来无穷,没法算。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式