how to save each loop data

8 ビュー (過去 30 日間)
abdul asad
abdul asad 2016 年 6 月 11 日
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?

回答 (1 件)

Chad Greene
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 件のコメント
abdul asad
abdul asad 2016 年 6 月 11 日
it works... thanks for your help
Afraz MEHMOOD CHAUDHRY
Afraz MEHMOOD CHAUDHRY 2022 年 1 月 28 日
for me second option worked easily. Thanks Chad!

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by