Retrieving odd numbers from a matrix

84 views (last 30 days)
Kayuri Shah
Kayuri Shah on 15 Feb 2015
Edited: Stephen23 on 15 Feb 2015
Within a matrix, I want to be able to retrieve only odd numbers within the matrix, and place that into its own matrix.
What I have right now is:
x = randn(1,100); odd = mod(x, (x/2))
I'm not able to get the new matrix, odd, to print with the odd values from x, even though I divided by 2, in order to return any values with a remainder. I get an error pointing to the second argument of the function mod.
Where am I going wrong with my code?
Thanks for the help!

Answers (2)

Andrea Nguyen
Andrea Nguyen on 15 Feb 2015
Instead of doing mod(x, x/2) use mod (x, 2)
This will output the odd numbers rather than just dividing it into two. Hope that helps!

Stephen23
Stephen23 on 15 Feb 2015
Edited: Stephen23 on 15 Feb 2015
Use MATLAB's great indexing ability:
X = randn(1,100);
Y = X(mod(X,2)==1);

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!