for loop problem

1 回表示 (過去 30 日間)
Mohammad Golam Kibria
Mohammad Golam Kibria 2011 年 10 月 11 日
for i=1:a:20
idx=find(consecutiveDiff(:,1)==val(i));
a=numel(idx);
end
i need to increment the value i as the value of a is changed. in first execute if a=5 the value of i becomes 2 not 1+5=6 . why ? can any body help?

採用された回答

Jan
Jan 2011 年 10 月 11 日
when the line for i = 1:a:20 is executed it uses the value of a as it is then known, which is probably 1.
You will need something like this:
i = 1;
while i<=20
idx = find(consecutiveDiff(:,1)==val(i));
a = numel(idx);
i = i + a;
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