MATLAB Answers

Transfer Array into another array

1 view (last 30 days)
Jethro Perez
Jethro Perez on 12 Nov 2020
Answered: Sourabh Kondapaka on 16 Nov 2020
I have two arrays
A=randi([0 20],1,n);
B=randi([0 10]',1,n)';
How do I make an array C that has the values of A as the first row and B as the first column, then fill the rest as the product of A*B.
like a multiplication table.


Show 2 older comments
Jethro Perez
Jethro Perez on 12 Nov 2020
Array C being size n x n
James Tursa
James Tursa on 12 Nov 2020
Yes, the solution is simple. Some hints for you:
You can concatenate variables with the [ ] notation. E.g.,
[x,y] concatenates the variables horizontally
[x;y] concatenates the variables vertically
You can transpose a vector from row to column (or vice-versa) with the .' operator, or just ' if you know the variable is real. E.g., if x is a real row vector, then x' will be a real column vector.
You can multiply two variables element-wise with the .* operator. If one of these is a row and the other one is a column, then the result will be a 2D matrix with the element-wise products as the elements.
See if you can experiment and work with the above to come up with the parts you want, and then see if you can use the [ ] notation to put them all together into the final matrix you want. Come back and ask more questions when you have trouble with your progress.
Jethro Perez
Jethro Perez on 12 Nov 2020
Thank you so much... your little paragraph summarize 120 minutes of lecture.

Sign in to comment.

Answers (1)

Sourabh Kondapaka
Sourabh Kondapaka on 16 Nov 2020
Looks like James Tursa has resolved your query. You can use built-in functions like horzcat and vertcat to achieve the same thing.
I would recommend you to check out the free MATLAB OnRamp Course to get started with the fundamentals of Matlab.


Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by