
1/1*2+1/2*3+1/3*4+1/4*5+1/5*6+.......1/99*100=? 算法
这个题目的算法是下面这个吗i=1s=0WHILEi<=99s=s+1/(i*(i+1))i=i+1WENDPRINT"s=";aEND好象输出的结果是.990000005...
这个题目的算法是下面这个吗
i=1
s=0
WHILE i<=99
s=s+1/(i*(i+1))
i=i+1
WEND
PRINT "s=";a
END
好象输出的结果是 .990000005
怎么与实际结果不同呢? 展开
i=1
s=0
WHILE i<=99
s=s+1/(i*(i+1))
i=i+1
WEND
PRINT "s=";a
END
好象输出的结果是 .990000005
怎么与实际结果不同呢? 展开
展开全部
1/1*2+1/2*3+1/3*4+1/4*5+1/5*6+.......1/99*100=?
1/1*2=1/1-1/2 1/2*3=1/2-1/3......
所以得到 1/1-1/2+1/2-1/3+1/3-1/4......-1/99+1/99-1/100=1-1/100=0.99
用数学方法算出,不要用计算机去循环算,循环算结果容易出现误差,误差主要在1/6,1/12这样的数中,由于除不进,计算机一般取到小数点后6位,这样误差就有了,数字越大误差越明显
1/1*2=1/1-1/2 1/2*3=1/2-1/3......
所以得到 1/1-1/2+1/2-1/3+1/3-1/4......-1/99+1/99-1/100=1-1/100=0.99
用数学方法算出,不要用计算机去循环算,循环算结果容易出现误差,误差主要在1/6,1/12这样的数中,由于除不进,计算机一般取到小数点后6位,这样误差就有了,数字越大误差越明显
展开全部
可能是计算有误差吧
程序没有问题
程序没有问题
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数据类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询