MATLAB: How to find the second zero element in an array

arrayfindindexzero

Hello, I have the following problem: I would like to find the second non zero element in an array such as: array = [ 0 138 49 47 0 0 0 0] What I want is the index 5. Thank you for your help!

Best Answer

index 5 is zero? You said you are looking for non-zero?!!!
anyway you can use find().
something like this:
myArray=[ 0 138 49 47 0 0 0 0];
idx=find(myArray==0,2,'first');
if (numel(idx)<2)
error('less than 2 elements were found');
end
idx=idx(end)
idx =
5