How to generate a matrix with desired pattern using nested for loops?
2 ビュー (過去 30 日間)
古いコメントを表示
I need to generate a 5x5 matrix like this one using nested for loops.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/997715/image.png)
My first thought is to generate a zeros or ones matrix of same size and perform an operation to each term making it change to the desired one. I guess it is more complicated than I thought. Here is how I am trying to do it.
clear; clc;
A = zeros(5,5);
[numRows, numCols] = size(A);
for i = 1:numRows
for j = 1:numCols
A(i,j) = 1; %in here I would perform an operation or something that will make the specific number change.
end
end
A
% another thing that comes to my mind is to change the step from 1:numRows and 1:numCols to something like 1:2:numRows etc but it didn't work as expected.
0 件のコメント
採用された回答
Dyuman Joshi
2022 年 5 月 14 日
編集済み: Dyuman Joshi
2022 年 5 月 14 日
n=5;
A=zeros(n);
for i = 1:n
for j = min(i,n-i+1):max(i,n-i+1)
A(i,j) = 1;
end
end
A
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!