晚上好,专家
我想用mathematica来解决递归方程,
x(n) = x(n − 1) + n
for n > 0,
x(0) = 0
我需要找到x(1),x(2),x,(3)
这是我的输入,它给了我错误
n > 0
a[0] := 0
RSolve[x == a[n - 1] + n, a[n], n]
如何使用mathematica重写等式? 提前致谢
答案 0 :(得分:5)
这种模式的一个例子是the documentation for RSolve中的第二个例子:
包含边界条件:
In[1]:= RSolve[{a[n + 1] - 2 a[n] == 1, a[0] == 1}, a[n], n] Out[1]= {{a[n] -> -1 + 2^(1 + n)}}
对于您的问题,那就是:
In[1]:= RSolve[{a[n] == a[n - 1] + n, a[0] == 0}, a[n], n]
Out[1]= {{a[n] -> 1/2 n (1 + n)}}
答案 1 :(得分:1)
只需使用
RSolve[{a[n] == a[n - 1] + n, a[0] == 0}, a[n], n]
删除以下内容:
n > 0
a[0] := 0
a[0] := 0
是一个函数定义。 a
RSolve
必须没有关联的定义才能使用{{1}}
答案 2 :(得分:1)
如果要查找x(1),x(2),x(3),可以使用RecurrenceTable
:
RecurrenceTable[{x[n] == x[n - 1] + n, x[0] == 0}, x[n], {n, 3}]
{0,1,3,6}
x(1)= 1,x(2)= 3,x(3)= 6