I have an array of say 5 elements and I want to run a loop and find the cumulative sum till the ith iteration eg.
array if f=[1 2 3 4 5]
so in the first iteration sum should be 1,in the 2nd it should be 3,in the third it should be 6 and so on...
what is the most efficient way to do this?
thanks in advance:]

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 22 Jun. 2015
Bearbeitet: Azzi Abdelmalek am 22 Jun. 2015

0 Stimmen

f=[1 2 3 4 5];
out=cumsum(f)

4 Kommentare

Terry McGinnis
Terry McGinnis am 22 Jun. 2015
this gives the sum of all the elements.I want it till the ith element when the loop is in the ith iteration..
Azzi Abdelmalek
Azzi Abdelmalek am 22 Jun. 2015
Bearbeitet: Azzi Abdelmalek am 22 Jun. 2015
k=3
out=sum(f(1:k))
%or you can make a for loop
s(1)=f(1);
for k=2:numel(f)
s(k)=s(k-1)+f(k);
end
or just iterate over the cumsum
f = [1 2 3 4 5]
for s = cumsum(f)
%do something with s
end
Terry McGinnis
Terry McGinnis am 22 Jun. 2015
this is what i needed.thanks

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by