【发布时间】:2017-02-14 14:35:15
【问题描述】:
我有矩阵 A=2x2 B=2x4 C=2x2 例如我希望得到一个矩阵 D=2x16
A=[1 3;
2 4]
B=[3 2 4 2;
4 3 6 3]
C=[4 5;
7 5]
D=[(1+3+4) (1+3+5) (1+2+4) (1+2+5) (1+4+4) (1+4+5) (1+2+4) (1+2+5) (3+3+4) (3+3+5) (3+2+4) (3+2+5) (3+4+4) (3+4+5) (3+2+4) (3+2+5);
(2+4+7) (2+4+5) (2+3+7) (2+3+5) (2+6+7) (2+6+5) (2+3+7) (2+3+5) (4+4+7) (4+4+5) (4+3+7) (4+3+5) (4+6+7) (4+6+5) (4+3+7) (4+3+5)]
表示将逐行元素添加到结果中。我有一个 A=2x1 的代码,但我可以理解如何根据 A=2x2 来塑造它,代码如下所示
[rows,col_B]=size(B);
[~,col_C]=size(C);
result=zeros(rows,col_B*col_C);
for i=1:col_B
for j=1:col_C
result(:,(i-1)*col_C+j)=A+B(:,i)+C(:,j);
end
end
谁能告诉我这段代码中输出 RESULT 的语法?
【问题讨论】:
-
您能否更准确地说明您要添加的内容?你说你想要 A1+B1+C1 .... A1+B1+C16,但在你的例子中你做了一些不同的事情。在您的示例中,它是 A1+B1+C1 .... A1+B1+C4, A1+B2(!!!)+C5 .... A1+B2+C8, A1+B3(!!!)+C9 。 ... A1+B3+C12
-
请检查已编辑的问题
-
无法理解您的问题
-
D 的第 1 行显示 A 的第一行添加到 B 和 C 的第一行,这样每个元素都添加到 B 和 C 的所有可能组合中