How do I refer to only the odd-numbered elements in any given vector?

218 次查看(过去 30 天)
Given a vector I want to write a function that only refers to the odd-numbered elements in that given vector. How would I do this?
  1 个评论
Stephen23
Stephen23 2015-2-3
What is an "odd-numbered" element? An element for which the index is odd (keep in mind that MATLAB uses one-based indexing!), or where the element value itself is odd?

请先登录,再进行评论。

回答(2 个)

Star Strider
Star Strider 2015-2-3
I’m not certain what you mean by ‘odd-numbered elements’, so here are two possibilities:
v = [10:20];
oddidx = @(v) v(1:2:end); % Addressing Odd-Indexed Elements
oddval = @(v) v(rem(v,2) == 1); % Addressing Odd-Valued Elements
y1 = oddidx(v)
y2 = oddval(v)
produces:
y1 =
10 12 14 16 18 20
y2 =
11 13 15 17 19

MD ZIHADUL ISLAM TUSAR
function y = everyOther(x)
n=length(x);
y=x(1:2:n);
end

类别

Help CenterFile Exchange 中查找有关 Just for fun 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by