How does 'break' work?

23 ビュー (過去 30 日間)
Sherwin
Sherwin 2016 年 10 月 27 日
コメント済み: Sherwin 2016 年 10 月 27 日
Hi, I need to know what happens after "break"? what does the loop skip to? I need it to skip to "for i = 1:50" and start from a new i. Please help me.
for i = 1:50
if a {i,5}(1) <= a{1,4}(1)
b{i,1} = a{1,1};
else
for j = 1:50
if a {i,5}(1) >= a{j,4}(1) && a{i,5}(1) <= a{j+1,4}(1)
b{i,1} = a{j+1,1};
break
end
end
end
end
  2 件のコメント
Adam
Adam 2016 年 10 月 27 日
doc break
is a useful start.
Sherwin
Sherwin 2016 年 10 月 27 日
Thank you.

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

採用された回答

James Tursa
James Tursa 2016 年 10 月 27 日
編集済み: James Tursa 2016 年 10 月 27 日
The "break" statement breaks out of the "innermost" loop that it is inside of. In your code above, it will break out of the for j=1:50 loop and start executing at the next line after the "j loop" end statement. This next statement happens to be the end statement in an else clause. Since there is no "i loop" code after this end statement other than the "i loop" end statement, this break will effectively cause the for i=1:50 loop to skip to the next i also.
  3 件のコメント
James Tursa
James Tursa 2016 年 10 月 27 日
Yes. Right after b{i,1} is assigned, it will break out of the "j loop". The next statement it hits is the "end" associated with the "else" block. So it exits this "else" block. The next statement it hits is the "end" associated with the "i loop". So this will effectively cause the code to skip to the next "i" iteration.
Sherwin
Sherwin 2016 年 10 月 27 日
Thank you so much!

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

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2016 年 10 月 27 日
"break" lets some of the Magic Smoke out of your loop. It is sort of like letting some of the air out of your tires -- while you are driving on the highway!
  1 件のコメント
Sherwin
Sherwin 2016 年 10 月 27 日
Beautiful metaphor! Thank you :)

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

カテゴリ

Help Center および File ExchangeLanguage Fundamentals についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by