for loop iteration dimension

w=[1 2 3 4 5 6 7];
I want to subtract each element from the neighboring one. like to have finally; w2=[1-2,2-3,3-4,4-5,5-6,6-7]; in a for loop i can write i=1 for i=1:7; W2(i)=w(i)-w(i+1)
i=i+1; end but i get error that the last number can be read since it is out of dimension. how should i do then?
so many thanks

Answers (1)

Shashvat Prakash
Shashvat Prakash on 16 Dec 2015
Edited: Shashvat Prakash on 16 Dec 2015
Pay attention to the size of w2. It is a six-element array, not a seven element one. So your code should be:
for i=1:6
w2(i)=w(i)-w(i+1);
end
Alternatively, you can write:
w2=w(1:end-1)-w(2:end)
This avoids the time-consuming loop.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

NEG
on 19 Nov 2015

Edited:

on 16 Dec 2015

Community Treasure Hunt

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

Start Hunting!