Create a matrix (24,72) using 'for' loop.

1 view (last 30 days)
How can I use the loop 'for' or other, to produce the same matrix (24,72) depicted in the figure? kind regards.

Accepted Answer

Joseph Cheng
Joseph Cheng on 15 Jan 2016
Edited: Joseph Cheng on 15 Jan 2016
since it is a nice simple pattern of (zeros for columns that are a multiple of 3) then:
DesiredResult = ones(24,72);
DesiredResult(:,3:3:end)=0;
  1 Comment
ET-TAOUSSI mehdi
ET-TAOUSSI mehdi on 16 Jan 2016

Nice solution thank you Joseph Cheng.

Sign in to comment.

More Answers (1)

Brendan Hamm
Brendan Hamm on 15 Jan 2016
You could do this with a loop:
A = ones(24,72);
for k = 1:72
if rem(k,3) == 0
A(:,k) = 0;
end
end
or you could do this in one line:
A = repmat([1 1 0],24,72/3);
The latter is much faster and more elegant.
  1 Comment
ET-TAOUSSI mehdi
ET-TAOUSSI mehdi on 16 Jan 2016
the last is a good solution, thank you Brendan Hamm.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!