Bird
Raised Fist0
R Programmingprogramming~10 mins

Switch statement in R Programming - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to use the switch statement to print the day name for 1.

R Programming
day <- 1
result <- switch(day, [1], "Tuesday", "Wednesday")
print(result)
Drag options to blanks, or click blank then click option'
A"1"
B1
CMonday
D"Monday"
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting to put quotes around the day names.
Using numeric values instead of strings for day names.
2fill in blank
medium

Complete the code to use switch with character input to print the correct fruit color.

R Programming
fruit <- "apple"
color <- switch(fruit, apple = [1], banana = "yellow", cherry = "red")
print(color)
Drag options to blanks, or click blank then click option'
Agreen
B"red"
C"green"
Dred
Attempts:
3 left
💡 Hint
Common Mistakes
Not using quotes around the color names.
Using the wrong color for apple.
3fill in blank
hard

Fix the error in the switch statement to return the correct output for number 3.

R Programming
num <- 3
result <- switch(num, "one", "two", [1])
print(result)
Drag options to blanks, or click blank then click option'
Athree
B"three"
C"3"
D3
Attempts:
3 left
💡 Hint
Common Mistakes
Using numeric values instead of strings.
Forgetting quotes around the string.
4fill in blank
hard

Fill both blanks to create a switch that returns the correct day name for 2 and 4.

R Programming
day <- 4
name <- switch(day, [1], [2], "Wednesday", "Thursday")
print(name)
Drag options to blanks, or click blank then click option'
A"Monday"
B"Tuesday"
C"Wednesday"
D"Thursday"
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing up the order of days.
Not using quotes for day names.
5fill in blank
hard

Fill all three blanks to create a switch that returns the correct fruit color for "banana".

R Programming
fruit <- "banana"
color <- switch(fruit, apple = [1], banana = [2], cherry = [3])
print(color)
Drag options to blanks, or click blank then click option'
A"green"
B"yellow"
C"red"
D"blue"
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong colors for fruits.
Forgetting quotes around color names.

Practice

(1/5)
1. What does the switch() function in R primarily do?
easy
A. Selects a value from multiple options based on a given expression
B. Repeats a block of code multiple times
C. Defines a new function
D. Creates a loop that runs until a condition is false

Solution

  1. Step 1: Understand the purpose of switch()

    The switch() function evaluates an expression and returns a value based on matching cases.
  2. Step 2: Compare with other options

    Options A, C, and D describe loops or function definitions, which are not the role of switch().
  3. Final Answer:

    Selects a value from multiple options based on a given expression -> Option A
  4. Quick Check:

    Switch chooses one option based on input [OK]
Hint: Switch picks one matching case value quickly [OK]
Common Mistakes:
  • Confusing switch with loops like for or while
  • Thinking switch defines functions
  • Missing the idea of selecting based on expression
2. Which of the following is the correct syntax to use switch() in R?
easy
A. switch(expression, case1 = value1, case2 = value2, default = value3)
B. switch { expression; case1: value1; case2: value2; default: value3 }
C. switch(expression) { case1 => value1; case2 => value2; default => value3 }
D. switch(expression, case1: value1, case2: value2, default: value3)

Solution

  1. Step 1: Recall R's switch syntax

    In R, switch() uses named arguments for cases like case1 = value1.
  2. Step 2: Check each option

    switch(expression, case1 = value1, case2 = value2, default = value3) matches R syntax. Options A, B, and C use syntax styles from other languages or incorrect separators.
  3. Final Answer:

    switch(expression, case1 = value1, case2 = value2, default = value3) -> Option A
  4. Quick Check:

    R switch uses named arguments with = [OK]
Hint: Use = for cases inside switch in R [OK]
Common Mistakes:
  • Using colon : instead of equals = for cases
  • Trying to use curly braces {} with switch
  • Confusing R syntax with other languages
3. What is the output of the following R code?
result <- switch("b", a = 10, b = 20, c = 30, 40)
print(result)
medium
A. 10
B. 20
C. 30
D. 40

Solution

  1. Step 1: Identify the switch expression and cases

    The expression is "b". The cases are a=10, b=20, c=30, and a default 40.
  2. Step 2: Match the expression to a case

    Since the expression matches case "b", the value 20 is returned.
  3. Final Answer:

    20 -> Option B
  4. Quick Check:

    Expression "b" matches case b = 20 [OK]
Hint: Match expression string to named case [OK]
Common Mistakes:
  • Choosing default value instead of matching case
  • Confusing case names with values
  • Forgetting switch returns matched case value
4. Identify the error in this R switch statement:
switch(2,
  1 = "one",
  2 = "two",
  3 = "three"
)
medium
A. Switch expression should be a string, not a number
B. Missing a default case
C. Incorrect use of commas between cases
D. Using numeric cases with = instead of unnamed cases

Solution

  1. Step 1: Understand switch with numeric expression in R

    When the expression is numeric, switch expects unnamed arguments, not named with =.
  2. Step 2: Check the code

    The code uses named cases like 1 = "one", which is invalid syntax for numeric switch.
  3. Final Answer:

    Using numeric cases with = instead of unnamed cases -> Option D
  4. Quick Check:

    Numeric switch uses unnamed cases, not named with = [OK]
Hint: Use unnamed cases for numeric switch, named for string [OK]
Common Mistakes:
  • Using = with numeric cases causes syntax error
  • Assuming default case is mandatory
  • Thinking switch expression must be string
5. You want to write a switch statement in R that returns "small", "medium", or "large" for numeric input 1, 2, or 3 respectively, and "unknown" for any other number. Which code correctly implements this?
hard
A. switch(as.character(x), '1' = "small", '2' = "medium", '3' = "large", "unknown")
B. switch(x, '1' = "small", '2' = "medium", '3' = "large", "unknown")
C. switch(x, "small", "medium", "large", "unknown")
D. switch(x, 1 = "small", 2 = "medium", 3 = "large", default = "unknown")

Solution

  1. Step 1: Understand switch behavior with numeric input

    For numeric input matching positions 1,2,3, use unnamed positional arguments, placing "unknown" as the 4th for other small numbers.
  2. Step 2: Analyze each option

    A, C use string literals like '1' = which cause syntax error (unexpected =). D uses numeric literals 1 = which cause syntax error (unexpected =). B uses unnamed arguments, correct for numeric positional matching.
  3. Final Answer:

    switch(x, "small", "medium", "large", "unknown") -> Option C
  4. Quick Check:

    Numeric switch uses unnamed positional args [OK]
Hint: Unnamed args for numeric switch positions [OK]
Common Mistakes:
  • Using numeric cases with = causes syntax error
  • Not providing a default value for unmatched cases
  • Mixing numeric expression with string case names
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard