Changing the For LOOP conditions
古いコメントを表示
Hello.
I have a for loop that starts with image number 1 and ends with the last image n.
for i=1:n
Sometimes, I only need to analyse every other image- starting at image 2, so would require
for i=2:2:n
I would like to use a checkbox to determine the parameters of the loop.
Rather than write out 2 different loops depending on the value of a checkbox, is there a way where i can just use a single for loop with some condition at the start
i.e.
val=get(handles.checkbox1,'Value)
if val==1
use i=1:n
else
use i=2:2:n
end
採用された回答
その他の回答 (1 件)
If val has a value either 1 or 2:
for k = 1:val:n
If val is a boolean (i.e. 0 or 1) then simply do either of these:
for k = 1:(1+val):n % true->2, false->1
for k = 1:(2-val):n % true->1, false->2
3 件のコメント
Jason
2019 年 10 月 10 日
"But also the starting value needs to be 1 or 2."
That is such a trivially simple change, that I sure that you could have figured that out yourself:
for k = val:val:n
And for the boolean you can also do it quite simply. Using if is a waste of MATLAB, when you can simply set the step size directly. Using intermediate vectors is also pointless.
Jason
2019 年 10 月 10 日
カテゴリ
ヘルプ センター および File Exchange で Convert Image Type についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!