MATLAB: Diagonal Pattern by writing loops

arraysdiagonalloopspatterns

how can I print these diagonal patterns by writing a loop in a 21×21 array?

Best Answer

Try this:
M = diag([ones(1,9) 0 ones(1,9)]);
M = M + fliplr(M);
M(ceil(size(M,1)/2), ceil(size(M,1)/2)) = 1;
figure
imagesc(M)
axis('image')
colormap([0 0 0; 1 1 1])
No loops necessary.
Experiment to get different results.