I want to define a square in a matrix
1 次查看(过去 30 天)
显示 更早的评论
I want to define a square located at i=1 to a certain distance down and across. The matrix I have so far is
n=10;
A=zeros(n,n);
for i=1:n*n
A(1+i)=i;
end
My square starts at i=1 and four down and four across I would like to make the other area have a value of 0. I need to change the size of the square when n changes.
采纳的回答
dpb
2013-10-16
编辑:dpb
2013-10-16
>> n=6; % overall size
s=4; % size of square
r=1; c=1; % row,column upper left corner
A=zeros(n);
A(r:r+s-1,c:c+s-1)=reshape(1:s*s,s,[]);
>> A
A =
1 5 9 13 0 0
2 6 10 14 0 0
3 7 11 15 0 0
4 8 12 16 0 0
0 0 0 0 0 0
0 0 0 0 0 0
>>
Salt to suit...for your example, r=c=1 of course.
You'll want error-checking, etc., etc., etc., ...
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!