MATLAB: Adds one element in vector from another, by position in array

additionfor loopindexiteration

Say I have a vector 'x' that is [1:100], and I want to create a function that creates a new vector 'y' that is the sum of x(n+2)+x(n+3) at each position (n) of x (beginning at 1 and moving through the vector). What would this function look like?
This is my attempt at the function, but it does not work
for i=1:size(x)
y(i) = [x(i+2)+x(i+3)]
end
Thank you for any help!

Best Answer

x = 1:100; % superfluous square brackets removed.
y = x(3:end-1)+x(4:end) % the MATLAB way.
y = 1×97
7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65