If文
CoddyのRジャーニー「基礎」セクションの一部 — レッスン 22/78。
論理式の作り方がわかったところで、それらの条件に基づいて、プログラムに実際に何かをさせる時が来ました。if 文を使うと、コードで意思決定を行うことができます。
if 文は、条件が TRUE のときにのみコードブロックを実行します。
temperature <- 35
if (temperature > 30) {
print("It's hot outside!")
}Rがif文に遭遇すると、括弧内の条件を評価します。結果がTRUEであれば、波括弧{}内のコードが実行されます。FALSEであれば、Rはそのブロックを完全にスキップし、プログラムの残りの部分を続行します。
条件として、論理値に評価される任意の式を使用できます。これには、すでに学習した比較演算子や論理演算子も含まれます。
age <- 20
has_id <- TRUE
if (age >= 18 && has_id) {
print("Access granted")
}波括弧内のコードは、両方の条件が満たされた場合にのみ実行されます。age が18未満、または has_id が FALSE のいずれかである場合、何も起こりません。
チャレンジ
簡単if 文を使用して条件をチェックし、その条件が TRUE の場合にのみメッセージを表示してください。
以下の変数が提供されています:
balance <- 250
withdrawal_amount <- 100
is_account_active <- TRUE以下の条件がすべて満たされているかどうかをチェックする if 文を記述してください:
- アカウントがアクティブであること
- 残高(balance)が引き出し額(withdrawal_amount)以上であること
両方の条件が TRUE の場合、print() 関数を使用して "Withdrawal approved" というメッセージを表示してください。
条件が満たされない場合、コードは何も出力しないようにしてください。
自分で試してみよう
# 提供された変数
balance <- 250
withdrawal_amount <- 100
is_account_active <- TRUE
# TODO: 以下にコードを記述してください
# if 文を使用して、以下を確認してください:
# 1. アカウントがアクティブであること (is_account_active)
# 2. 残高 (balance) が引き出し額 (withdrawal_amount) 以上であること
# 両方の条件が TRUE の場合、"Withdrawal approved" と出力してくださいこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。