Match two vector and star the 2nd vector with zero value

1 view (last 30 days)
Hi,
Vectro A has the values of MATH function.
I want to define a vector B that has the same value of A except that B start from zero. In other word, B (i) = 0 if A (i) is not zero until the first zero element comes. Then, B(i) = A(i) for the rest of the vector. where i is the index.
I tried to do this by for loop and if statment but it does not work:
for i = 1:length(Time);
if A(i) ~= 0
B(i)= 0;
j=i;
elseif A(i) == 0;
for j = i :length(Time1);
B(j)= A(j);
end
break
end
break
end
For example:
If
A = [ 0.6 1 0.4 0 -0.4 -1 -0.4 0.2 0.6 1]
I want
B = [ 0 0 0 0 -0.4 -1 -0.4 0.2 0.6 1]

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 11 May 2014
Edited: Azzi Abdelmalek on 11 May 2014
A = [ 0.6 1 0.4 0 -0.4 -1 -0.4 0.2 0.6 1]
idx=find(A==0,1)
B=A;
B(1:idx)=0
  3 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 11 May 2014
A =[ 0.6 1 0.4 0 -0.4 -1 -0.4 0.2 0.6 1 0 -0.4 0.2 0.6]
zero_position=2;
idx=find(A==0,zero_position);
idx=idx(end);
B=A;
B(1:idx)=0

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!