Saving for loop output in an array

149 views (last 30 days)
Terry
Terry on 17 Oct 2013
Commented: yamen alharbi on 29 Dec 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

Accepted Answer

Yatin
Yatin on 17 Oct 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 Comments
yamen alharbi
yamen alharbi on 29 Dec 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

Sign in to comment.

More Answers (1)

Vivek Selvam
Vivek Selvam on 17 Oct 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:

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!