break 文
CoddyのLuaジャーニー「Fundamentals」セクションの一部 — レッスン 75/90。
時には、ループが自然に終了する前にループを抜ける必要があります。break 文はこの機能を提供します。これは現在のループを即座に停止し、ループの end の後に続くコードにジャンプします。
簡単な例で break がどのように動作するかを示します:
for i = 1, 10 do
if i == 5 then
break
end
print(i)
end
print("Loop finished!")このループは通常1から10までの数字を出力しますが、iが5に等しくなったときにbreak文がループを終了させます。そのため、1、2、3、4だけを出力し、すぐに「Loop finished!」へと進みます。
チャレンジ
簡単for ループと break ステートメントを使用して、一連の宝箱を探索する宝探しシステムを作成します。まず、targetTreasure という名前の変数を作成し、値 7 を代入することから始めます。
1から10までの番号がついた宝箱を探索する for ループを記述してください。ループ内では、"Searching chest: " というメッセージに続けて現在の宝箱の番号を表示します。次に、現在の宝箱の番号が targetTreasure の値と等しいかどうかを確認します。一致した場合は、"Treasure found!" と表示し、break ステートメントを使用して直ちにループを終了してください。
ループが終了した後(自然に終了した場合、または break によって終了した場合のいずれでも)、宝探しのセッションが終了したことを示すために "Search complete" と表示してください。
チートシート
break文は、現在のループを即座に停止し、ループのendの後のコードにジャンプします。
for i = 1, 10 do
if i == 5 then
break
end
print(i)
end
print("Loop finished!")これは1、2、3、4を出力し、iが5に等しくなると"Loop finished!"にジャンプします。
自分で試してみよう
-- ターゲットの宝物を設定する
local targetTreasure = 7
-- TODO: ここにコードを書いてください
-- 1から10までの宝箱を探索するforループを作成する
-- "Searching chest: "に続けて宝箱の番号を表示する
-- 宝箱の番号がtargetTreasureと等しいか確認する
-- 見つかった場合は、"Treasure found!"と表示してループを抜ける
-- ループの後、"Search complete"と表示するこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。