Bird
Raised Fist0
R Programmingprogramming~20 mins

Return values in R Programming - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Return Values Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
What is the output of this R function call?
Consider the following R function and its call. What value does it return?
R Programming
multiply_and_add <- function(x, y) {
  result <- x * y
  return(result + 5)
}
multiply_and_add(3, 4)
A17
B7
C12
D15
Attempts:
2 left
💡 Hint
Remember the function multiplies x and y first, then adds 5 before returning.
❓ Predict Output
intermediate
2:00remaining
What does this R function return when called?
Look at this R function and its call. What is the returned value?
R Programming
check_even <- function(num) {
  if (num %% 2 == 0) {
    return(TRUE)
  } else {
    return(FALSE)
  }
}
check_even(7)
ATRUE
BNULL
C7
DFALSE
Attempts:
2 left
💡 Hint
The function returns TRUE if the number is even, otherwise FALSE.
❓ Predict Output
advanced
2:00remaining
What is the output of this nested return function?
Analyze the following R code. What value does the function return when called with input 5?
R Programming
nested_return <- function(x) {
  inner <- function(y) {
    return(y * 2)
  }
  return(inner(x) + 3)
}
nested_return(5)
A10
B13
C15
D8
Attempts:
2 left
💡 Hint
The inner function doubles the input, then the outer adds 3.
❓ Predict Output
advanced
2:00remaining
What does this function return when no explicit return is used?
What is the output of this R function call?
R Programming
no_return <- function(x) {
  y <- x + 2
  y * 3
}
no_return(4)
ANULL
B6
C18
D12
Attempts:
2 left
💡 Hint
In R, the last evaluated expression is returned if no return() is used.
❓ Predict Output
expert
3:00remaining
What is the output of this recursive function call?
Consider this recursive R function. What value does factorial(4) return?
R Programming
factorial <- function(n) {
  if (n == 1) {
    return(1)
  } else {
    return(n * factorial(n - 1))
  }
}
factorial(4)
A24
B10
C16
D1
Attempts:
2 left
💡 Hint
Factorial multiplies n by factorial of n-1 until n is 1.

Practice

(1/5)
1. What does the return() function do in an R function?
easy
A. It sends a value back to where the function was called.
B. It prints a message on the screen.
C. It stops the entire program immediately.
D. It creates a new variable inside the function.

Solution

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

    The return() function is used inside an R function to send a value back to the place where the function was called.
  2. Step 2: Differentiate from other actions

    Printing messages or stopping the program are different actions and not the role of return().
  3. Final Answer:

    It sends a value back to where the function was called. -> Option A
  4. Quick Check:

    Return sends value back = A [OK]
Hint: Return sends output back from function to caller [OK]
Common Mistakes:
  • Thinking return prints output
  • Confusing return with stopping program
  • Assuming return creates variables
2. Which of the following is the correct way to return the value 10 from a function in R?
easy
A. return 10
B. return(10)
C. return{10}
D. return <- 10

Solution

  1. Step 1: Recall correct return syntax in R

    In R, the correct syntax to return a value is to use return() with parentheses around the value.
  2. Step 2: Check each option

    return(10) uses return(10), which is correct. Others have syntax errors or wrong usage.
  3. Final Answer:

    return(10) -> Option B
  4. Quick Check:

    Use parentheses with return = A [OK]
Hint: Use parentheses with return to send value back [OK]
Common Mistakes:
  • Omitting parentheses after return
  • Using curly braces instead of parentheses
  • Assigning return as a variable
3. What will be the output of this R code?
my_func <- function() {
  x <- 5
  y <- 10
  x + y
}
result <- my_func()
print(result)
medium
A. NULL
B. 5
C. Error
D. 15

Solution

  1. Step 1: Understand function return behavior without explicit return()

    In R, if no return() is used, the last evaluated expression is returned automatically. Here, x + y is the last expression.
  2. Step 2: Calculate the last expression value

    x = 5 and y = 10, so x + y equals 15. This value is returned and stored in result.
  3. Final Answer:

    15 -> Option D
  4. Quick Check:

    Last expression returned = 15 [OK]
Hint: Last expression in function returns automatically if no return() [OK]
Common Mistakes:
  • Expecting NULL if no return()
  • Thinking print inside function returns value
  • Confusing variable assignment with return
4. Identify the error in this R function that tries to return the sum of two numbers:
add_numbers <- function(a, b) {
  sum <- a + b
  return sum
}
medium
A. Variable sum is not defined
B. Function should not use return
C. Missing parentheses after return
D. Function parameters are incorrect

Solution

  1. Step 1: Check return statement syntax

    The return statement in R requires parentheses around the value to return. Here, return sum is missing parentheses.
  2. Step 2: Confirm variable and parameters are correct

    The variable sum is defined as a + b, and parameters are correct. So no error there.
  3. Final Answer:

    Missing parentheses after return -> Option C
  4. Quick Check:

    return() needs parentheses = B [OK]
Hint: Always use parentheses with return in R [OK]
Common Mistakes:
  • Omitting parentheses after return
  • Confusing variable scope errors
  • Thinking return is optional always
5. You want to write an R function that returns a named list with two values: the sum and product of two numbers. Which code correctly returns both values?
hard
A. calc <- function(a, b) { return(list(sum = a + b, product = a * b)) }
B. calc <- function(a, b) { sum <- a + b product <- a * b return(sum, product) }
C. calc <- function(a, b) { sum <- a + b product <- a * b return c(sum, product) }
D. calc <- function(a, b) { sum <- a + b product <- a * b list(sum, product) }

Solution

  1. Step 1: Understand how to return multiple values in R

    R functions can return a list to send back multiple values together.
  2. Step 2: Check each option for correct syntax

    calc <- function(a, b) { return(list(sum = a + b, product = a * b)) } correctly returns a named list with sum and product. calc <- function(a, b) { sum <- a + b product <- a * b return(sum, product) } tries to return two values separately, which is invalid. calc <- function(a, b) { sum <- a + b product <- a * b return c(sum, product) } returns a vector instead of a list. calc <- function(a, b) { sum <- a + b product <- a * b list(sum, product) } returns a list but without return(), so it returns the last expression implicitly, which works but does not name elements.
  3. Final Answer:

    calc <- function(a, b) { return(list(sum = a + b, product = a * b)) } -> Option A
  4. Quick Check:

    Return named list for multiple values = C [OK]
Hint: Use return(list(...)) to send multiple values back [OK]
Common Mistakes:
  • Trying to return multiple values without list
  • Using return with multiple arguments incorrectly
  • Forgetting to name list elements
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