MATLAB中A(1:2,[3,4,5])=zeros(2,3) 是什么意思 请详细解答 5
3个回答
2014-11-04
展开全部
就是把矩阵A的第1-2行、第3-5列这一共6个元素赋值为0.
追问
ZERO(2,3) 不是一个2行3列的0矩阵吗 为什么把A赋值以后矩阵的行数和列数会改变呢???、
追答
尽管ZERO(2,3) 只有2行3列,但对A赋值是要求对第3~5列进行的,所以:
如果矩阵A原来的行数为2(或以上)、列数为5(或以上),则上述赋值语句只是将相应的子矩阵块的值赋为0,矩阵的行列数不会改变;
如果A的行数和列数不足2和5,在其它编程语言中一般会导致错误,而MATLAB会自动对矩阵进行扩展,使得矩阵满足该语句能够执行的条件,这种情况下矩阵的行数或列数就会改变。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-11-04
展开全部
>> A=magic(5)
A =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
>> A(1:2,[3,4,5])=zeros(2,3)
A =
17 24 0 0 0
23 5 0 0 0
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
A =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
>> A(1:2,[3,4,5])=zeros(2,3)
A =
17 24 0 0 0
23 5 0 0 0
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
追问
ZERO(2,3) 不是一个2行3列的0矩阵吗 为什么把A赋值以后矩阵的行数和列数会改变呢???、
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询