【发布时间】:2016-03-03 09:09:22
【问题描述】:
嗨,我正在尝试根据问题编写一个函数。我试图创建四个彼此相反的子矩阵,然后相乘以给出问题所需的乘积。我的尝试:
function T = custom_blocksT(n,m)
T(1:end,end-1:1);
T(1:end,end:-1:1)*2;
T(1:end,end:-1:1)*3;
T(1:end,end:-1:1)*4;
我不确定的是
(i) 各个子矩阵(T(1:end,end-1:1);)需要等于什么?我在想(1:3)?
(ii) 我试图创建一个通用子矩阵,它可以使用 end 接受任何大小的矩阵输入,这是正确的还是你不能这样做?我不断收到此错误
Undefined function or variable 'T'.
Error in custom_blocksT (line 2)
T(1:end,end-1:1);
我已经搜索了 Matlab 文档和堆栈溢出,但问题是我不太确定在解决这个问题方面我应该寻找什么。
如果有人可以帮助我,我将非常感激。
【问题讨论】:
-
有很多错误的事情......你的函数应该得到一个矩阵,而不是 2 个值。
T(1:end,end-1:1)没有意义,因为 1)T 还不存在,2)你没有进行分配。有太多问题我们无法提供帮助。
标签: matlab function matrix indexing