Clear Filters
Clear Filters

Problem 6. Select every other element of a vector

2 views (last 30 days)
function x = everyOther(x)
n=length(x)
if mod(x,2)==1
i=1:2:n
expected=[x(i)]
else
i=1:2:n-1
expected=[x(i)]
end
end
This is the code I wrote
Why is this a mistake

Answers (1)

Matt J
Matt J on 27 Apr 2022
Edited: Matt J on 27 Apr 2022
It's wrong because you have assumed that IF statements on a vector distribute in some way across the elements of the vector. They don't. The implementation can be done in one line,
function x = everyOther(x)
x=x(1:2:end);
end
  3 Comments
Matt J
Matt J on 27 Apr 2022
军 川 's reply relocated here:
thank you.it's nice
Matt J
Matt J on 27 Apr 2022
You are quite welcome, but please Accept-click the answer to indicate that it was what you needed.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!