Saving for loop output in an array

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

 采纳的回答

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 个评论

Thank you very much. This worked perfectly.
i also solved after reading this answer. thank you
Hi, I tried this way to solve my code, but it doesn't work. Could you help me?
t = 0:20000;
Vx1 = 1000;
A = zeros(1,20)
for ii = 1:2000:length(t)
Vx1= Vx1 - (0.0004*Vx1^2)*(t(ii)/1000)
A(ii)= Vx1;
end
It helps very much. Thank you.
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

请先登录,再进行评论。

更多回答(1 个)

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:

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by