Menu
CoddyTech

whileループ

CoddyのLuaジャーニー「基礎」セクションの一部。レッスン 71/90。

プレイヤーのライフがなくなるまでなど、何回繰り返すかをあらかじめ知らずにコードを繰り返す必要がある場合があります。そんなときにぴったりなのがwhileループです。条件がtrueである限り、同じコードを何度も実行し続けます。

whileループの基本的な構文は次のようになります。

while condition do
    -- 繰り返し実行するコード
end

1から3までの数を出力する簡単な例です:

local count = 1

while count <= 3 do
    print(count)
    count = count + 1
end

このループは、まずcount <= 3が真かどうかを確認します。真であれば、内部のコードが実行され、現在の数値を出力してカウンターを増やします。その後、条件をもう一度確認し、条件が偽になるまでこの処理を繰り返します。

challenge icon

チャレンジ

簡単

プレイヤーの回復過程を追跡するために、whileループを使った体力監視システムを作成しましょう。まず、playerHealthという名前の変数を作成し、値25を代入します。次に、maxHealthという名前の別の変数を作成し、値100を代入します。

プレイヤーの体力が最大体力より少ない間、続けて実行されるwhileループを書きましょう。ループの中では、まず現在の体力の値を出力し、その後playerHealthを15増やします。増加する前に出力するため、最後に出力される値は85です。15を加えた後(playerHealthが100になると)、ループ条件が再び確認されます。100はmaxHealthより小さくないため、100を出力せずにループは停止します。

期待される出力は次のとおりです。
25
40
55
70
85

自分で試してみよう

-- プレイヤーの体力と最大体力を初期化する
local playerHealth = 25
local maxHealth = 100

-- TODO: ここにコードを書く
-- playerHealth < maxHealth の間続く while ループを作成する
-- ループ内で現在の体力を表示し、その後 playerHealth を 15 増やす
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Luaオンラインコンパイラ