Using 'If statements' and 'for loops', my matrix isn't populating properly!

1 回表示 (過去 30 日間)
Conal Doyle
Conal Doyle 2013 年 7 月 23 日
jumps = zeros(10,5);
for i = 1:10
for j = 1:5
if top_currencies_vol_change(i,j) < 0.75
jumps(i,j) = -1;
return
else
if top_currencies_vol_change(i,j) > 1.25
jumps(i,j) = 1;
return
end
end
end
end
Using the above code, the matrix populates until the first condition of one of the if statements is satisfied, e.g.
0 0 0 0 0
0 0 0 1 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
when I want it to continue populating until the entire matrix has been completed. Any idea why it just stops after the first success?

採用された回答

kjetil87
kjetil87 2013 年 7 月 23 日
its because of the return command.
example
for i=1:10
disp(i);
return;
end
% correct version
for i=1:10
disp(i);
end

その他の回答 (0 件)

カテゴリ

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