📖 Scenario: You are helping a small shop owner decide if a product is affordable for customers based on its price.
🎯 Goal: Build a simple R program that uses if-else statements to check if a product price is affordable or expensive compared to a set budget.
📋 What You'll Learn
Create a variable with the product price
Create a variable with the budget limit
Use an if-else statement to compare the price with the budget
Print 'Affordable' if the price is less than or equal to the budget
Print 'Expensive' if the price is greater than the budget
💡 Why This Matters
🌍 Real World
Shop owners often need to check if product prices fit within customer budgets to decide promotions or discounts.
💼 Career
Understanding if-else statements is essential for programming logic used in data analysis, automation, and decision-making tasks.
Progress0 / 4 steps
1
Create the product price variable
Create a variable called price and set it to 120.
R Programming
Hint
Use the assignment operator <- to assign the value 120 to price.
2
Create the budget variable
Create a variable called budget and set it to 100.
R Programming
Hint
Use the assignment operator <- to assign the value 100 to budget.
3
Write the if-else statement
Write an if-else statement that checks if price is less than or equal to budget. If yes, assign the string 'Affordable' to a variable called result. Otherwise, assign 'Expensive' to result.
R Programming
Hint
Use if (price <= budget) { ... } else { ... } to decide the value of result.
4
Print the result
Write a line to print the value of the variable result.
R Programming
Hint
Use print(result) to show the result on the screen.
Practice
(1/5)
1. What does an if-else statement do in R?
easy
A. It chooses which code to run based on a condition.
B. It repeats code multiple times.
C. It stores data in a list.
D. It creates a new function.
Solution
Step 1: Understand the purpose of if-else
An if-else statement checks a condition and runs code depending on whether the condition is TRUE or FALSE.
Step 2: Compare options with the definition
Only It chooses which code to run based on a condition. describes choosing code based on a condition, which matches if-else behavior.
Final Answer:
It chooses which code to run based on a condition. -> Option A
Quick Check:
If-else chooses code path = D [OK]
Hint: If-else picks code based on TRUE or FALSE condition [OK]
Common Mistakes:
Confusing if-else with loops
Thinking if-else stores data
Mixing if-else with function creation
2. Which of the following is the correct syntax for an if-else statement in R?
easy
A. if (x > 0) { print("Positive") } else { print("Non-positive") }
B. if x > 0 then print("Positive") else print("Non-positive")
C. if x > 0 { print("Positive") } else { print("Non-positive") }
D. if (x > 0) print "Positive" else print "Non-positive"
Solution
Step 1: Recall R if-else syntax
In R, conditions go inside parentheses, and code blocks inside curly braces.
Step 2: Check each option
if (x > 0) { print("Positive") } else { print("Non-positive") } uses parentheses and braces correctly. Options A, C, and D miss parentheses or braces or use wrong keywords.
Final Answer:
if (x > 0) { print("Positive") } else { print("Non-positive") } -> Option A
Quick Check:
Correct if-else syntax uses ( ) and { } = B [OK]
Hint: Use parentheses for condition and braces for code blocks [OK]
The variable score is 75. The condition checks if 75 >= 60, which is TRUE.
Step 2: Determine which block runs
Since the condition is TRUE, the code inside the if block runs, printing "Pass".
Final Answer:
"Pass" -> Option B
Quick Check:
75 >= 60 is TRUE, so output is "Pass" [OK]
Hint: Check if condition is TRUE to pick output [OK]
Common Mistakes:
Confusing >= with >
Thinking else block runs when condition is TRUE
Ignoring quotes in printed output
4. Find the error in this R code snippet:
num <- 10
if num > 5 {
print("Greater")
} else {
print("Smaller")
}
medium
A. Using else without if
B. Missing curly braces around print statements
C. Variable num is not defined
D. Missing parentheses around the condition in if statement
Solution
Step 1: Check if statement syntax
In R, the condition in if must be inside parentheses. Here, it's written as if num > 5 without parentheses.
Step 2: Verify other parts
Curly braces are present, else is correctly used, and num is defined as 10.
Final Answer:
Missing parentheses around the condition in if statement -> Option D
Quick Check:
If condition needs ( ) in R [OK]
Hint: Always put condition inside parentheses in if [OK]
Common Mistakes:
Omitting parentheses around condition
Confusing curly braces placement
Thinking else can stand alone
5. You want to write an R program that prints "Even" if a number is divisible by 2, "Odd" if divisible by 3 but not 2, and "Other" otherwise. Which code correctly uses if-else statements?
hard
A. if (num %% 2 == 0) {
print("Odd")
} else {
if (num %% 3 == 0) {
print("Even")
} else {
print("Other")
}
}
B. if (num %% 3 == 0) {
print("Odd")
} else if (num %% 2 == 0) {
print("Even")
} else {
print("Other")
}
C. if (num %% 2 == 0) {
print("Even")
} else if (num %% 3 == 0) {
print("Odd")
} else {
print("Other")
}
D. if (num %% 2 == 0) {
print("Odd")
} else if (num %% 3 == 0) {
print("Even")
} else {
print("Other")
}
Solution
Step 1: Understand the conditions order
Check divisibility by 2 first to print "Even". If not divisible by 2, check divisibility by 3 to print "Odd". Otherwise print "Other".
Step 2: Match code with logic
if (num %% 2 == 0) {
print("Even")
} else if (num %% 3 == 0) {
print("Odd")
} else {
print("Other")
} checks num %% 2 == 0 first, then num %% 3 == 0, then else. This matches the requirement exactly.
Final Answer:
if (num %% 2 == 0) {
print("Even")
} else if (num %% 3 == 0) {
print("Odd")
} else {
print("Other")
} -> Option C
Quick Check:
Check 2 first, then 3, else other = A [OK]
Hint: Check conditions in correct priority order [OK]
Common Mistakes:
Checking divisibility by 3 before 2
Swapping print messages for even and odd
Missing nested else for other cases
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.