in my case, i have an array enveloped in for loop
for i = 1:6
array = [0.5 1 5 2 7 3]
end
now i want to show the result of sum in array element (ex: 0.5 + 1 on first iteration, then 1.5(result of previous iteration) + 5 and so on)
the code that i already try is :
array(i) = array(i) + array(i-1)
but i can't get the result. i already tried with temp, but the problem persists.
thank you

4 commentaires

Walter Roberson
Walter Roberson le 21 Mar 2019
Note that each iteration of that "for i" loop, you are overwriting all of array
thanks for the answer!
my first programming language before MATLAB is C#, and apparently C# use recursive for my case (already worked it with my friend).
in C# (for example)
for(int i = 0: i<7; i++)
{
new_array[i] = old_array[i] + old_array[i+1];
}
*it's 7, because c# starts counting from 0
i'm still confused with MATLAB array element, how to express if we want to add array(i) with one element before it(i-1)
What you had before
array(i) = array(i) + array(i-1)
should work, provided i starts at 2.
... But you need to be sure not to overwrite all of array in the loop. The assignment to array should not have been in a loop.
Kenneth Sabandar
Kenneth Sabandar le 21 Mar 2019
thank you! i really appreciate it

Connectez-vous pour commenter.

 Réponse acceptée

Krishna Kumar
Krishna Kumar le 21 Mar 2019
Are you just interested in this?
array = [0.5 1 5 2 7 3];
sum=cumsum(array)
If you just want add two neighbouring terms, this should work:
sum= array(1:end-1)+array(2:end)
which basically adds an element with previous one.

Plus de réponses (0)

Catégories

En savoir plus sur Operators and Elementary Operations dans Centre d'aide et File Exchange

Produits

Version

R2017a

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by