elseif文
CoddyのLuaジャーニー「Fundamentals」セクションの一部 — レッスン 42/90。
elseif文を使用すると、複数の条件を順番にチェックできます。これにより、基本的なif-then-else構造が拡張され、複雑な意思決定シナリオを処理できるようになります。
elseifを使用するための構文は次のとおりです:
if condition1 then
-- 最初の条件のためのコード
elseif condition2 then
-- 2番目の条件のためのコード
elseif condition3 then
-- 3番目の条件のためのコード
else
-- どの条件も真でない場合のコード
endLuaは各条件を上から下へと評価します。true である最初の条件が見つかると、そのコードブロックを実行し、残りの条件はすべてスキップします。もしどの条件も true でない場合、(もし存在すれば) else ブロックが実行されます。
成績評価の実用的な例を以下に示します:
local grade = 85
if grade >= 90 then
print("Excellent")
elseif grade >= 70 then
print("Good")
else
print("Needs Improvement")
end成績が85なので、最初の条件(85 >= 90)はfalseですが、2番目の条件(85 >= 70)はtrueなので、"Good"が出力されます。
チャレンジ
簡単学生の成績を3つのレベルに分類する成績評価システムを作成してください。
studentGradeという変数を宣言し、値75を代入します。if-elseif-else文を使用して成績を確認し、適切なメッセージを出力してください。- 成績が85以上の場合は、
"Excellent"と出力します - 成績が65以上(かつ85未満)の場合は、
"Good"と出力します - それ以外のすべての成績の場合は、
"Needs Improvement"と出力します
チートシート
elseif文を使用すると、複数の条件を順番にチェックできます。
if condition1 then
-- 最初の条件用のコード
elseif condition2 then
-- 2番目の条件用のコード
elseif condition3 then
-- 3番目の条件用のコード
else
-- どの条件も真でない場合のコード
endLuaは各条件を上から下に評価します。trueである最初の条件が見つかると、そのコードブロックを実行し、残りの条件はすべてスキップします。
local grade = 85
if grade >= 90 then
print("Excellent")
elseif grade >= 70 then
print("Good")
else
print("Needs Improvement")
end自分で試してみよう
-- studentGrade変数を宣言する
local studentGrade = 75
-- TODO: ここにコードを記述してください
-- if-elseif-else文を使用して成績を確認し、適切なメッセージを表示します
-- studentGradeが85以上の場合は、"Excellent"と表示します
-- studentGradeが65以上の場合は、"Good"と表示します
-- それ以外の場合は、"Needs Improvement"と表示しますこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。