how to save each loop data
Afficher commentaires plus anciens
I have a for loop, but every iteration overwrites the variable and I have only the final data left..

where p is an array p=[1:1:20]' how can I save data from every loop saves only the last value when 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 . how do I get the other values?
Réponses (1)
Chad Greene
le 11 Juin 2016
Modifié(e) : Chad Greene
le 11 Juin 2016
There are several ways to do this. One way is to make a counter, and increment that counter each time through the loop:
p=[1:1:20]';
k = 0; % <-start a counter
for x=.1:.1:1
k=k+1; % <-increment the counter
q(:,k)=x.*p; % <- log the result
end
Another way is very similar, but some would say better coding style:
p=[1:1:20]';
x=.1:.1:1;
for k = 1:length(x)
q(:,k) = x(k).*p;
end
Or of course if all you need is the cross product you can skip the loops altogether:
p=[1:1:20]';
x=.1:.1:1;
q = p*x;
2 commentaires
abdul asad
le 11 Juin 2016
Afraz MEHMOOD CHAUDHRY
le 28 Jan 2022
for me second option worked easily. Thanks Chad!
Catégories
En savoir plus sur Loop-Shaping Design dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!