Saving for loop output in an array

84 visualizaciones (últimos 30 días)
Terry
Terry el 17 de Oct. de 2013
Comentada: yamen alharbi el 29 de Dic. de 2020
I wrote a code in which I predefine the variable "a" and then set up a for loop of 5 iterations where the variable "a" goes through some basic operations. However, the for loop output only saves the fifth iteration of "a." How do I save all 5 iterations in a 1x5 array?
The code is as follows:
a = 10;
k = 0.5;
n = 2;
for m = 1:5
a = a + (a*k) + n;
end

Respuesta aceptada

Yatin
Yatin el 17 de Oct. de 2013
Hi,
You will have to insert the value of a in another array during each iteration. Below is the modified code:
a = 10;
k = 0.5;
n = 2;
valueOfA = zeros(1,5);
for m = 1:5
a = a + (a*k) + n;
valueOfA(m) = a;
end
  6 comentarios
mohammed magdy
mohammed magdy el 1 de Dic. de 2019
thank you sir
yamen alharbi
yamen alharbi el 29 de Dic. de 2020
clc
clear all
a(1)=10; k=0.5;n=2;
a1=zeros(1,5); %create an array to store the results
for m=1:5
a(m+1)=a(m)+a(m)*k+n;
a1(1,m)=a(m+1); %store each result in a vector
end

Iniciar sesión para comentar.

Más respuestas (1)

Vivek Selvam
Vivek Selvam el 17 de Oct. de 2013
Terry, this implementation has a different final value.
a(m+1) = a(m) + a(m)*k + n;
Do you want the same final value?
If you are interested check out preallocation:

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by