作者profyang (prof)
看板MATLAB
标题Re: [运算] 等比级数运算问题
时间Wed May 1 00:36:38 2013
※ 引述《dream9119 (Dream)》之铭言:
: 不好意思,麻烦各位大大帮帮我...
: 刚开始学....
: 不知道我哪边写错了....K值要大...但每次pi都爆掉....
: 拜托各位帮忙了,谢谢..
: 题目http://ppt.cc/n0Oh
: err=5e-12;
: x=0;
: s=pi^4/90;
: for k=0:10000000
: x = x+1/k^4;
: if abs(x-s) <=err;
: break;
: end;
: end;
: k
我指的是这样:
err=1;
x=0; k=0;
s=pi^4/90;
while err>5e-12
k = k+1;
x = x+1/k^4;
err = abs(x-s);
end;
k
时间理论上跟你用for一样阿 哪可能不一样 我测了一下跑到k=4054才0.007秒而已
但是while有个好处阿~如果今天你err定很小k要到10000001才够你怎办?
把10000000改成100000000??不是吧?不用这麽麻烦吧?用while不就一次解决?
...除非你怕自己像一开始那样写错造成无穷回圈= ="
那直接跳出改到对就好了啊~
--
正妹也只不过是一组物质波方程的特解罢了(  ̄ c ̄)y▂ξ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.247.141
※ 编辑: profyang 来自: 140.112.247.141 (05/01 00:39)
1F:→ profyang:我想讲的只是 这个程式的重点是在於 你根本不知道k会要到 05/01 00:41
2F:→ profyang:多少才够~当然嘛~不然还要你写这程式干嘛~ 05/01 00:41
3F:→ profyang:所以你一开始没跑程式前怎麽知道k一定不会超过10000000? 05/01 00:41
4F:推 dream9119:好的,我知道了.谢谢P大您耐心的指导原来刚开始我一直想 05/01 01:29
5F:→ dream9119:一直想K要很大很大....真是谢谢您 05/01 01:30
6F:→ profyang:不过这级数收敛性很好 你看它1/k^4就知道...所以你果然是 05/01 08:59
7F:→ profyang:因为一直无穷回圈才改成for 那是我多嘴了XD 05/01 08:59