how to create a vector with the different sum of two elements of another vector?

1 view (last 30 days)
v = [1, 2, 3, 4, 6, 8];
l = length(v)
for i = 1 : 2 : l (?)
som = sum + v(i);
end
I don't know how to increse 'i' to create the sum of the two elements of the vector, the solution will be: som = [3, 7, 14]

Accepted Answer

Stephen23
Stephen23 on 17 Mar 2019
Edited: Stephen23 on 18 Mar 2019
No need to use a loop, some simple indexing works perfectly:
>> v = [1,2,3,4,6,8];
>> v(1:2:end)+v(2:2:end)
ans =
3 7 14
or generalized slightly:
>> sum(reshape(v,2,[]),1)
ans =
3 7 14
  2 Comments
Enrica Brunetti
Enrica Brunetti on 18 Mar 2019
Thank you.
And then if I want to create another vector with the average of two different elements of the same first vector, is there another general function?
The solution will be a = [ 5, 7]

Sign in to comment.

More Answers (0)

Categories

Find more on Cell Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!