how can i place an array a= [2,2,2] randomly (vertically or horizontally) into a matrix b=zeros(10x10) ?

1 view (last 30 days)
how can i place an array a= [2,2,2] randomly (vertically or horizontally) into a matrix b=zeros(10x10) ?

Accepted Answer

Sean de Wolski
Sean de Wolski on 26 Nov 2013
%Sizes:
nz = 10;
z = zeros(nz);
a = [2 2 2];
na = numel(a);
%Engine:
dim = rand>0.5; %do we transpose
pos = randi(nz-na+1,[1 2]); %where?
z(pos(1):pos(1)+na-1,pos(2)) = a; %insert
if dim
z = z.';
end

More Answers (0)

Categories

Find more on Resizing and Reshaping 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!