数学建模社区-数学中国

标题: 太奇怪了,一个很简单的循环就是出不来结果。高手看一下 [打印本页]

作者: cigaring    时间: 2011-5-2 20:45
标题: 太奇怪了,一个很简单的循环就是出不来结果。高手看一下
k = {1}; a1 = 1;
8 e3 B; W- F0 D2 N( PDo[a2 = a1 + 1/a1; AppendTo[k, a2]; a1 = a2, {n, 2, 100}];' K& n$ k' D  x
ListPlot[k, Joined -> True]7 P" ^- f7 u/ Z; o/ F/ W2 Q
这是程序,我觉得这个循环很简单啊,但一直计算出不来结果,当100变成20的时候是可以出结果的。难道我这个循环效率很低?+ ?! ^% U# p: h9 X8 {+ H

作者: jw8023wh    时间: 2011-5-3 13:31
沙发沙发,坐等高手
作者: cjilyy    时间: 2011-10-14 09:19
建议:循环20次的时候,你先输出k集合看看,这个迭代方法得出的那个数字已经是相当的惊人了!
作者: alair004    时间: 2012-2-6 20:33
我一天不来数学中国社区就不爽~~~~7833740179115545
作者: IIvEvII    时间: 2012-2-8 09:23
没用过这软件 坐等高手
作者: buptlijun    时间: 2012-2-9 10:34
这个问题是这样的 math 做整形运算速度远小于浮点型 解决这个问题是将第二行改为:
8 a; z7 `9 e. D7 i5 TDo[a2 = a1 + 1.0/a1; AppendTo[k, a2]; a1 = a2, {n, 2, 100}];
3 M0 M& j4 I1 o: S6 S0 n这样 即使100变为10000 也几乎是瞬间出结果




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5