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 日

0 投票

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 件)

カテゴリ

ヘルプ センター および 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