📖 Scenario: Imagine you are creating a simple calculator function in R that adds two numbers and returns the result. This is like using a vending machine: you put in money (input), press a button (function), and get a snack (output). Here, the snack is the sum of two numbers.
🎯 Goal: You will build a function called add_numbers that takes two numbers as input and returns their sum. Then, you will call this function and print the result.
📋 What You'll Learn
Create a function called add_numbers with two parameters: a and b
Inside the function, return the sum of a and b
Call the function with the numbers 5 and 7 and store the result in a variable called result
Print the value of result
💡 Why This Matters
🌍 Real World
Functions that return values are used everywhere in programming to perform calculations, process data, and give back results. For example, a shopping app might use functions to calculate total prices.
💼 Career
Understanding how to write functions that return values is a key skill for any programming job, enabling you to write reusable and organized code.
Progress0 / 4 steps
1
Create the function add_numbers
Write a function called add_numbers that takes two parameters named a and b. For now, leave the function body empty.
R Programming
Hint
Use the syntax function(parameter1, parameter2) { } to create a function in R.
2
Add the return statement
Inside the add_numbers function, write a line that returns the sum of a and b using the return() function.
R Programming
Hint
Use return(a + b) to send back the sum from the function.
3
Call the function and store the result
Call the function add_numbers with the numbers 5 and 7. Store the returned value in a variable called result.
R Programming
Hint
Use result <- add_numbers(5, 7) to call the function and save the output.
4
Print the result
Write a line to print the value of the variable result.
R Programming
Hint
Use print(result) to display the sum.
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
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.
Step 2: Differentiate from other actions
Printing messages or stopping the program are different actions and not the role of return().
Final Answer:
It sends a value back to where the function was called. -> Option A
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
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.
Step 2: Check each option
return(10) uses return(10), which is correct. Others have syntax errors or wrong usage.
Final Answer:
return(10) -> Option B
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
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.
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.
Final Answer:
15 -> Option D
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
Step 1: Check return statement syntax
The return statement in R requires parentheses around the value to return. Here, return sum is missing parentheses.
Step 2: Confirm variable and parameters are correct
The variable sum is defined as a + b, and parameters are correct. So no error there.
Final Answer:
Missing parentheses after return -> Option C
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
Step 1: Understand how to return multiple values in R
R functions can return a list to send back multiple values together.
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.
Final Answer:
calc <- function(a, b) {
return(list(sum = a + b, product = a * b))
} -> Option A
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 unknownstrongwhile earning +1 Grip toward your certificate.