How to count how many numbers are odd or even?
Mostrar comentarios más antiguos
a = 3
r = 2
n = 0:5
g=0;
for n=n
g=g+(a*(r^n))
end
% How many numbers are even?
(rem(g,2)==0)
if ans==1('Even')
end
if ans==0('Odd')
end
I want the script to be able to count how many numbers are odd and how many are even, I don't need it to tell me if the numbers are odd or even I just want the number of how many are.
1 comentario
Jan
el 15 de Nov. de 2013
Do not use ans explicitly, because this is a very volatile variable.
Respuestas (2)
Walter Roberson
el 14 de Nov. de 2013
0 votos
Use two counters. Initialize them to 0. As you generate it number and test it for even or odd, add one to the appropriate counter.
Kelly Kearney
el 14 de Nov. de 2013
nx = 100;
x = randi(100,nx,1); % Some example data
neven = sum(~rem(x,2));
nodd = nx - neven;
3 comentarios
Walter Roberson
el 14 de Nov. de 2013
This can be shortened by one operation ;-)
Kelly Kearney
el 15 de Nov. de 2013
Okay then...
nodd = sum(rem(x,2));
neven = nx - nodd;
:-)
Walter Roberson
el 15 de Nov. de 2013
It would be interesting to compare the speed of nnz() to sum() for this case.
Categorías
Más información sobre Spatial Search en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!