Removing entries of vector indexed by odd integer.
이전 댓글 표시
So, in a question we've been asked to define a vector "x" which begins at 1.5 and ends at -3.5 with 101 entries in between without the use of any loops. So, I used linspace(1.4, -3.5, 101) to do this. However the next part of the question requires you to create a matrix "y" which corresponds to "x" only with the entries indexed by an odd integer removed. How can you do this without using a loop? Is there a function for it? Thanks.
채택된 답변
추가 답변 (1개)
x=linspace(1.4, -3.5, 101) ;
y=x;
y(1:2:end)=[];
or
y=x(2:2:end);
댓글 수: 9
David
2013년 9월 25일
Matt J
2013년 9월 25일
Because deleting odd x(i) is equivalent to keeping even x(i).
David
2013년 9월 25일
Matt J
2013년 9월 25일
Why don't you try and find out ;)
David
2013년 9월 25일
Leah
2013년 9월 25일
David there is a student version of MATLAB available for $99. I ended up using MATLAB for lots of other courses, not just numerical analysis where it was required.
Image Analyst
2013년 9월 25일
It gets elements, 2,4,6,8,10,12,14,........98,100,102. It can't get 104 since there is no 104, and since it doesn't get odd numbers, it won't get 103 even though it is "end" because it is odd. Does that explain it better?
Matt J
2013년 9월 25일
See also
>> 2:2:15
ans =
2 4 6 8 10 12 14
David
2013년 9월 25일
카테고리
도움말 센터 및 File Exchange에서 Functional Programming에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!