mathematica 递推设数列{xn}由以下递推关系给出,x1=1/2,x(n+1)=xn^2+xn (n=1,2,3...),观察数列1/(x1+1)+1/(x2+1)+.+1/(xn+1)的极限,用Mathematica实现.希望可以用比较简单的for语句解决

问题描述:

mathematica 递推
设数列{xn}由以下递推关系给出,x1=1/2,x(n+1)=xn^2+xn (n=1,2,3...),观察数列1/(x1+1)+1/(x2+1)+.+1/(xn+1)的极限,用Mathematica实现.
希望可以用比较简单的for语句解决

x[n_] := Which[n == 1,1/2,n > 1,x[n - 1]^2 + x[n - 1]];Table[Sum[1/(x[n] + 1),{n,1,t}] // N,{t,1,20}]
运行结果是{0.666667,1.2381,1.67053,1.91835,1.99384,1.99996,2.,2.,2.,\
2.,2.,2.,2.,2.,2.,2.,2.,2.,2.,2.}
可见极限是2
for语句不需要用