how to save each loop data
8 ビュー (過去 30 日間)
古いコメントを表示
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?
0 件のコメント
回答 (1 件)
Chad Greene
2016 年 6 月 11 日
編集済み: Chad Greene
2016 年 6 月 11 日
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 件のコメント
参考
カテゴリ
Help Center および 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!