How to add values through a for loop?

172 visualizaciones (últimos 30 días)
Hail
Hail el 13 de Ag. de 2014
Comentada: Salman Tahir el 14 de Sept. de 2017
I have a for loop that creates something like this:
first iteration: [1 2 3 4 5 6 7] second iteration: [2 3 4 5 6 7 8] third iteration: [3 4 5 6 7 8 9]
(these aren't my actual values, just an example)
I want my loop to add all of these together at the end. So I would get an output of:
[6 9 12 15 18 21 24]
How can I do this?
Thanks

Respuesta aceptada

Adam
Adam el 13 de Ag. de 2014
Editada: Adam el 13 de Ag. de 2014
Just pre-size a vector before the for loop as e.g.
result = zeros( 1, 7 );
then inside the for loop:
result = result + newValues;
where newValues are the results calculated in that iteration. Unfortunately Matlab doesn't have a += operator.
That will add them together as you go. If you really want to only do so at the end then you'd have to store an ( n * m ) matrix for n iterations with length m result and then sum along the relevant dimension.
  2 comentarios
Hail
Hail el 13 de Ag. de 2014
THANKS!
Salman  Tahir
Salman Tahir el 14 de Sept. de 2017
what do you mean by " If you really want to only do so at the end then you'd have to store an ( n * m ) matrix for n iterations with length m result and then sum along the relevant dimension."? what is this process called? Is there a place I can look this up?

Iniciar sesión para comentar.

Más respuestas (2)

Joseph Cheng
Joseph Cheng el 13 de Ag. de 2014
there are two methods. if you need to save each iteration then in the for loop save it like below:
for iter = 1:3
%calculations here to get your values A.
A(iter,:) = randi(10,1,7); % my dummy iteration values
end
SumA = sum(A);
if you don't need to save each iteration.
SumA = 0;
for iter = 1:3
%calculations here to get your values A.
SumA = SumA + randi(10,1,7); % my dummy iteration values
end

Salman  Tahir
Salman Tahir el 14 de Sept. de 2017
what do you mean by " If you really want to only do so at the end then you'd have to store an ( n * m ) matrix for n iterations with length m result and then sum along the relevant dimension."? what is this process called? Is there a place I can look this up?

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by