户外丝带飘动:请Mathematica编程高手来帮忙

来源:百度文库 编辑:神马品牌网 时间:2024/05/09 07:12:43
设数列{Xn}与{Yn}由下式确定
X1=1 Y1=2
Xn+1=(XnYn )^0.5
Yn+1=(Xn+Yn)/2
编写程序球数列{Xn}与{Yn}的极限值
告诉我用什么函数就可以了.

For[n=2;x=xx=1;y=yy=2,Abs[(x-y)*0.5]>=10^(-20),n++,x=(xx+yy)^0.5;y=(xx+yy)*0.5;xx=x;yy=y;Print["n=",n,"xn=",N[x,20],"yn=",N[y,20]]]
运行结果:
The limit is: x->1.45679, y->1.45679

eps = 10^(-10);(*允许误差*)
x1 = 1; y1 = 2;
x2 = (x1*y1)^0.5;
y2 = (x1 + y1)/2;
While[Abs[x1 - x2] > eps || Abs[y1 - y2] > eps,
x1 = x2; y1 = y2;
x2 = (x1*y1)^0.5;
y2 = (x1 + y1)/2];
Print["The limit is: x->", x2, ", y->", y2];

运行结果:
The limit is: x->1.45679, y->1.45679