Odd Numbers with missing multiples of a number

6 次查看(过去 30 天)
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

回答(1 个)

madhan ravi
madhan ravi 2019-9-14
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)

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by