C程序设计:设A=1+1/2+1/3+1/4+.......+1/n,若A=50,n=?求高人帮忙啊?感激不尽

 我来答
百度网友fa066cb
2012-09-22 · TA获得超过327个赞
知道小有建树答主
回答量:243
采纳率:0%
帮助的人:218万
展开全部
这貌似是个无解问题。
利用“欧拉公式”
1+1/2+1/3+……+1/n
=ln(n)+C,(C为欧拉常数)
具体证明看下面的链接
欧拉常数近似值约为0.57721566490153286060651209
这道题用数列的方法是算不出来的。这是个发散级数。。。。
我写了个程序,显示它的计算过成,越到后边sn的增量越小,算是算不出来。
#include <stdio.h>
int main()
{
double s1 = 1, s2, n, tem;
while( s1 < 50 )
{
s2 = s1 + 1/(n+1.);
n++;
s1 = s2;
printf("n=%f, s1=%f\n", n, s1);
}
printf("%f\n", n);
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式