Assembling two matrices into one in a given pattern
Show older comments
Hello everbody,
I am fairly new to Matlab and I have some difficulties solving a task from university.
The task ist to assemble two matrices into one global matrices in such form:
A = [ 1 2; 1 2 ]
B = [2 3; 2 3]
% Assemble A and B into C
C = [1 2 0; 1 4 3; 0 2 3]
I tried it using a for loop but I can't manage to insert them into the given form in C.
When searching for a solution I came across "indexing" but I couldn't figure out how to use it in my problem.
I am grateful for any and all help!
3 Comments
Jan
on 20 Jan 2021
There is an infirnite number of algorithms, which produces C basend on A and B. Without seeing the exact instructions, it is unlikely that the readers guess, what you want to implement.
Dario Garic
on 20 Jan 2021
Edited: Dario Garic
on 20 Jan 2021
Jan
on 20 Jan 2021
See my edited answer.
Answers (1)
A bold guess (although a wrong guess might be more confusing than posting nothing):
A = [1 2; 1 2];
B = [2 3; 2 3];
[s1, s2] = size(A);
C = zeros([s1, s2] + 1);
C(1:s1, 1:s2) = A;
C(2:s1+1, 2:s2+1) = C(2:s1+1, 2:s2+1) + B;
List = {[1 2; 1 2], [2 3; 2 3], [4 7; 8 9]};
n = numel(List);
C = zeros(n + 1, n + 1);
for k = 1:n
C(k:k+1, k:k+1) = C(k:k+1, k:k+1) + List{k};
end
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!