Menu
Coddy logo textTech

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 は偽となり、Rubyは最初のブロックをスキップして、代わりに else の後のコードを実行します。プログラムは「投票するには若すぎます。」と出力します。

if-elseでは、2つのブロックのうち必ずどちらか一方だけが実行されます。条件が真の場合は、最初のブロックが実行されます。偽の場合は、2つ目のブロックが実行されます。

balance = 100
withdrawal = 150

if balance >= withdrawal
  puts "Withdrawal successful"
else
  puts "Insufficient funds"
end

この構造は、相互に排他的な2つの結果がある場合に最適です。プログラムはどちらか一方に進まなければならず、両方に進むことも、どちらにも進まないこともありません。

challenge icon

チャレンジ

簡単

次の変数が与えられています。

temperature = 35
has_umbrella = false
account_balance = 50
withdrawal_amount = 75
player_score = 100
high_score = 100

以下の各シナリオを評価するために、if-else文を使用してください。条件がtrueかfalseかに基づいて、適切なメッセージを出力します。

  1. temperature30より大きい場合は、It's hot outsideを出力します。それ以外の場合は、The weather is niceを出力します。
  2. has_umbrellatrueの場合は、You're prepared for rainを出力します。それ以外の場合は、You might get wetを出力します。
  3. account_balancewithdrawal_amount以上の場合は、Withdrawal approvedを出力します。それ以外の場合は、Insufficient fundsを出力します。
  4. player_scorehigh_scoreより大きい場合は、New high score!を出力します。それ以外の場合は、Try againを出力します。
  5. temperature0より小さい、またはtemperature40より大きい場合は、Extreme weatherを出力します。それ以外の場合は、Normal conditionsを出力します。

各メッセージはそれぞれ別の行に表示してください。

自分で試してみよう

# 変数はすでに定義されています
temperature = 35
has_umbrella = false
account_balance = 50
withdrawal_amount = 75
player_score = 100
high_score = 100

# TODO: 以下にコードを書いてください
# if-else文を使って各シナリオを評価し、適切なメッセージを出力してください
quiz icon腕試し

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

基礎のすべてのレッスン

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