필터 지우기
필터 지우기

I want to define a square in a matrix

조회 수: 1 (최근 30일)
Kaelyn
Kaelyn 2013년 10월 16일
편집: dpb 2013년 10월 16일
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.
  댓글 수: 1
Azzi Abdelmalek
Azzi Abdelmalek 2013년 10월 16일
Can you post the expected result

댓글을 달려면 로그인하십시오.

채택된 답변

dpb
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개)

카테고리

Help CenterFile Exchange에서 Programming에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by