我与这个任务挣扎:Matlab的递归函数生成矩阵
创建一个递归函数采用N作为一个参数,并创建这样一个矩阵,在这种情况下,n = 3:
0 1 2 3 2 1 0
1 1 2 3 2 1 1
2 2 2 3 2 2 2
3 3 3 3 3 3 3
我已经想出了这一点:
function AA = A(n)
if n == 0
AA (1,1) = 0;
else
AA = n*ones(n+1,2*n+1);
AA(1:n, [1:n, n+3:end]) = A(n-1);
end
end
但产量似乎对RHS一个奇怪的变化:
0 1 2 3 3 2 1
1 1 2 3 3 2 1
2 2 2 3 3 2 2
3 3 3 3 3 3 3
有人可以帮忙吗?
它应该是什么样子的'N = 2'或'N = 4'?我大部分都被“3”的中间列混淆了。 – Dan
这是一个任务/你必须使用递归? – Daniel
更有意义,尽管最有意义的是中间两列三分之一...... – Dan