Saving for loop output in an array

158 vues (au cours des 30 derniers jours)
Terry
Terry le 17 Oct 2013
Commenté : yamen alharbi le 29 Déc 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

Réponse acceptée

Yatin
Yatin le 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 commentaires
mohammed magdy
mohammed magdy le 1 Déc 2019
thank you sir
yamen alharbi
yamen alharbi le 29 Déc 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

Connectez-vous pour commenter.

Plus de réponses (1)

Vivek Selvam
Vivek Selvam le 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:

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by