pseudo code for all n values

n=input('n= ');
A=ones(n);
A(2:n,2)=0;
A(2,2:n)=0;
A(4:n,4)=0;
A(4,4:n)=0;
A(6:n,6)=0;
A(6,6:n)=0
I wrote that code for n=7 but I want this to be true for every n value, how can i convert the code?

Answers (2)

n=input('n= ');
A=ones(n);
A(2:n,2)=0;
A(2,2:n)=0;
A(4:n,4)=0;
A(4,4:n)=0;
A(n-1:n,n-1)=0;
A(n-1,n-1:n)=0;
Possibly 4 is ceil(n/2) but if so you need to decide what you want to do if n is even.

1 Comment

Thank you so much.I will look at it with that perspective.

Sign in to comment.

Assuming that what you wanted was alternating pattern of 1's and 0's, regardless of how large n is, then this should do what you want:
n=input('n= ');
A=ones(n);
for ii = 2:2:n
A(ii:n,ii)=0;
A(ii,ii:n)=0;
end

1 Comment

It really works very well!Thank you so much!

Sign in to comment.

Categories

Find more on Operators and Elementary Operations in Help Center and File Exchange

Asked:

on 4 Apr 2021

Commented:

on 4 Apr 2021

Community Treasure Hunt

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

Start Hunting!