Odd Numbers with missing multiples of a number

8 views (last 30 days)
Hi guys, trying to figure out how to create a function that will allow me get all odd numbers but skip multiples of 3? Also would like to achieve this without adding a for loop. These are the tests:
Any help to set me on track would be appreciated
This is the code I have so far:
function out = oddsNoFives(a)
x = 1:2:a;
disp(x)
if mod(x,10)~=3
disp(x)
end
end
Im just trying to create the basic array from 1 to a to start with then work my way up from there. I dont understand why my "if mod(x,10)~=3" is not working properly either. Not very fluent so just trying to get tips but i understand the math involved

Answers (1)

madhan ravi
madhan ravi on 14 Sep 2019
I leave the understanding part to the reader to understand whats going on:
oddsNoFives=@(x,y)nonzeros((~sum(~mod(1:x,[2;y]),1)).*(1:x)).'
% Calling the function
oddsNoFives(30,[])
oddsNoFives(30,5)
oddsNoFives(30,7)

Categories

Find more on Programming in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!