Create a vector that only the first element and the last element is 0

B=zeros(mx,1);
for z=1:mx
if B(z,1) == B(1,1)
B(z,1) = 0;
elseif B(z,1) == B(mx,1)
B(z,1) = 0;
else
B(z,1) = 1;
end
end
I want to create a vector B that only (1,1) and (mx,1) equal to 0 but from (2 to mx,1) equal to 1. But my code still only show a zero matrix. How can I fix that?

Answers (1)

N = 10 ; % length of the vector
iwant = ones(N,1) ;
iwant(1) = 0 ;
iwant(N) = 0 ;

2 Comments

Or with the loop:
B = zeros(mx,1);
for z = 2:mx-1
B(z) = 1;
end
This is not efficient and I would not use it in real programs, but it shows how your loop can be modified.

Sign in to comment.

Categories

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

Tags

Asked:

on 25 Jan 2017

Edited:

on 25 Jan 2017

Community Treasure Hunt

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

Start Hunting!