作业帮 > 综合 > 作业

如何编程求解递归函数表达式 L(0)=1,L(1)=1-x;L(n)=(1+2*(n-1)-x)*L(n-1)-(n-1

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/27 22:03:20
如何编程求解递归函数表达式 L(0)=1,L(1)=1-x;L(n)=(1+2*(n-1)-x)*L(n-1)-(n-1)*L(n-2) 求n=2,4,6,8表达式
用C语言或者matlab编程
啊,你这个参数x是一个符号,因此用C或者matlab都不太适合,我用Mathematica一分钟就出来了
L[n_] := Module[{},
If[n == 0,Return[1]];
If[n == 1,Return[1 - x],
Return[Expand[(1 + 2 (n - 1) - x) L[n - 1] - (n - 1) L[n - 2]]]]
]
打印出n=2,4,6,8的表达式
Table[{k,L[k]},{k,2,8,2}] // TableForm
{{2,2 - 4 x + x^2},
{4,50 - 136 x + 80 x^2 - 16 x^3 + x^4},
{6,4348 - 12872 x + 9814 x^2 - 3160 x^3 + 490 x^4 - 36 x^5 + x^6},
{8,779804 - 2431712 x + 2128832 x^2 - 857024 x^3 + 186844 x^4 -
23408 x^5 + 1680 x^6 - 64 x^7 + x^8}}
再问: 昨天发的有点急了,最后一项应该是(n-1)^2*L(n-2),麻烦你再运行一下程序帮忙求解,谢谢你了
再答: 定义函数 L[n_] := Module[{}, If[n == 0, Return[1]]; If[n == 1, Return[1 - x], Return[Expand[(1 + 2 (n - 1) - x) L[n - 1] - (n - 1)^2* L[n - 2]]]]] 求值 Table[{k, L[k]}, {k, 2, 8, 2}] {{2, 2 - 4 x + x^2}, {4, 24 - 96 x + 72 x^2 - 16 x^3 + x^4}, {6, 720 - 4320 x + 5400 x^2 - 2400 x^3 + 450 x^4 - 36 x^5 + x^6}, {8, 40320 - 322560 x + 564480 x^2 - 376320 x^3 + 117600 x^4 - 18816 x^5 + 1568 x^6 - 64 x^7 + x^8}}