我正在尝试创建这个矩阵,其中行中的每个元素等于前一个元素 + 10,列中的每个元素等于 + 1 示例:
[ 1. 11. 21
2. 12. 22
3 13. 23
]
我刚刚完成课程,这是在练习中,我不知道如何去做。
您显示的示例矩阵可以使用广播操作和包含结果的方向分量的单个数组来制作。在水平方向,数字增加 10(从零 10 开始)。在垂直方向上,它们增加 1(从 1 开始)。
所以,最简单的是,我们可以这样做:
[0, 10, 20] + [1;2;3]
ans =
1 11 21
2 12 22
3 13 23
(注意 , 分隔列元素, ; 分隔行元素)
现在,对于更大的数组,您还可以使用索引表示法来创建这些数组:
[0:10:40] + [1:4]'
ans =
1 11 21 31 41
2 12 22 32 42
3 13 23 33 43
4 14 24 34 44
注意
'
将行向量转置为列向量。
最后,您可以使用任意大小的变量:
n = 4, 10*[0:n] + [1:n]'
n = 4
ans =
1 11 21 31 41
2 12 22 32 42
3 13 23 33 43
4 14 24 34 44