MATLAB Answers

A function that counts the number of zeros in a vector

6 views (last 30 days)
Lubos Plechac
Lubos Plechac on 12 Oct 2021
Answered: Jan on 12 Oct 2021
D = ones(1,20);
for i = 1:20;
if mod(i,2) == 0;
D(i) = 0;
end
end
---------
D = [ 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0]
and I need A function that counts the number of zeros in a vector I know there are 10 zeros but how to earn? I found only this but is not enough.
sum(find(D==0)/11) = 10

Answers (3)

Stephen
Stephen on 12 Oct 2021
Edited: Stephen on 12 Oct 2021
D = [1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0];
nnz(D==0)
ans = 10

Dave B
Dave B on 12 Oct 2021
you were pretty close, you just didn't need the find, or the /11
D = [ 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0]
D = 1×20
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
sum(D==0)
ans = 10

Jan
Jan on 12 Oct 2021
Beside
sum(D == 0)
nnz(D)
This would be working also, if the elements are 0 or 1 only:
numel(D) - sum(D)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by