If - Else
CoddyのRubyジャーニー「基礎」セクションの一部 — レッスン 22/88。
プログラムで2つの異なるパスのどちらかを選択する必要がある場合があります。elseキーワードを使用すると、if条件が偽(false)の場合に何が起こるかを指定できます:
age = 15
if age >= 18
puts "You can vote!"
else
puts "You're too young to vote."
endこの例では、age が15であるため、条件 age >= 18 は偽(false)となります。そのため、Rubyは最初のブロックをスキップし、代わりに else 以降のコードを実行します。プログラムは "You're too young to vote." と出力します。
if-else を使用すると、2つのブロックのうち必ず1つだけが実行されます。条件が真(true)の場合、最初のブロックが実行されます。偽(false)の場合、2番目のブロックが実行されます:
balance = 100
withdrawal = 150
if balance >= withdrawal
puts "Withdrawal successful"
else
puts "Insufficient funds"
endこの構造は、2つの排他的な結果がある場合に最適です。プログラムはいずれか一方の道を進む必要があり、両方進むことも、どちらも進まないこともありません。
チャレンジ
簡単以下の変数が提供されています:
temperature = 35
has_umbrella = false
account_balance = 50
withdrawal_amount = 75
player_score = 100
high_score = 100if-else 文を使用して、以下の各シナリオを評価してください。条件が真か偽かに基づいて、適切なメッセージを出力してください。
temperatureが30より大きい場合は、It's hot outsideと出力してください。そうでない場合は、The weather is niceと出力してください。has_umbrellaがtrueの場合は、You're prepared for rainと出力してください。そうでない場合は、You might get wetと出力してください。account_balanceがwithdrawal_amount以上である場合は、Withdrawal approvedと出力してください。そうでない場合は、Insufficient fundsと出力してください。player_scoreがhigh_scoreより大きい場合は、New high score!と出力してください。そうでない場合は、Try againと出力してください。temperatureが0未満、またはtemperatureが40より大きい場合は、Extreme weatherと出力してください。そうでない場合は、Normal conditionsと出力してください。
各メッセージはそれぞれの行に出力してください。
チートシート
elseキーワードは、if条件が偽(false)の場合に何が起こるべきかを指定します:
age = 15
if age >= 18
puts "You can vote!"
else
puts "You're too young to vote."
endif-elseを使用すると、2つのブロックのうち必ず1つだけが実行されます。条件が真(true)であれば最初のブロックが実行され、偽(false)であれば2番目のブロックが実行されます:
balance = 100
withdrawal = 150
if balance >= withdrawal
puts "Withdrawal successful"
else
puts "Insufficient funds"
end自分で試してみよう
# 変数はすでに定義されています
temperature = 35
has_umbrella = false
account_balance = 50
withdrawal_amount = 75
player_score = 100
high_score = 100
# TODO: 以下にコードを記述してください
# if-else文を使用して各シナリオを評価し、適切なメッセージを表示してくださいこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。