Bird
Raised Fist0
R Programmingprogramming~10 mins

Function definition 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 define a function named greet that prints "Hello!".

R Programming
greet <- function() {
  print([1])
}
Drag options to blanks, or click blank then click option'
A"Hello!"
BHello
Cprint("Hello!")
Dgreet
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting quotes around the text.
Trying to print without using print() function.
2fill in blank
medium

Complete the code to define a function add that takes two numbers x and y and returns their sum.

R Programming
add <- function(x, y) {
  return([1])
}
Drag options to blanks, or click blank then click option'
Ax - y
Bx * y
Cx / y
Dx + y
Attempts:
3 left
💡 Hint
Common Mistakes
Using subtraction or multiplication instead of addition.
Forgetting to return the result.
3fill in blank
hard

Fix the error in the function definition to correctly calculate the square of a number n.

R Programming
square <- function(n) {
  result <- n [1] n
  return(result)
}
Drag options to blanks, or click blank then click option'
A*
B+
C-
D/
Attempts:
3 left
💡 Hint
Common Mistakes
Using + instead of * for multiplication.
Using division or subtraction operators.
4fill in blank
hard

Fill both blanks to define a function named is_even that returns TRUE if a number num is even, otherwise FALSE.

R Programming
is_even <- function(num) {
  if (num [1] 2 == 0) {
    return([2])
  } else {
    return(FALSE)
  }
}
Drag options to blanks, or click blank then click option'
A%%
BTRUE
C==
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using == instead of %% for modulo.
Returning FALSE when number is even.
5fill in blank
hard

Fill all three blanks to define a function named greet_person that takes a name and returns a greeting string like "Hello, Alice!".

R Programming
greet_person <- function([1]) {
  greeting <- paste([2], [3], sep = ", ")
  return(greeting)
}
Drag options to blanks, or click blank then click option'
Aname
B"Hello"
D"!"
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting to include the parameter name.
Not using paste() correctly to join strings.

Practice

(1/5)
1. What is the correct way to start defining a function named greet in R?
easy
A. greet <- function() { }
B. function greet() { }
C. def greet() { }
D. function <- greet() { }

Solution

  1. Step 1: Recognize R function syntax

    In R, functions are defined by assigning a function() to a name using <-.
  2. Step 2: Match the correct syntax

    greet <- function() { } uses the correct syntax: name <- function() { }.
  3. Final Answer:

    greet <- function() { } -> Option A
  4. Quick Check:

    Function definition = name <- function() [OK]
Hint: Use name <- function() to define functions in R [OK]
Common Mistakes:
  • Using def instead of function
  • Writing function name() without <-
  • Placing function keyword after name
2. Which of the following is the correct syntax to define a function add that takes two arguments x and y in R?
easy
A. function add(x, y) { x + y }
B. add(x, y) <- function { return x + y }
C. add <- function(x, y) { return(x + y) }
D. add <- function x, y { return(x + y) }

Solution

  1. Step 1: Check function definition format

    In R, arguments go inside parentheses after function keyword, and the body is inside braces.
  2. Step 2: Verify return statement and assignment

    add <- function(x, y) { return(x + y) } correctly assigns function with arguments and uses return() properly.
  3. Final Answer:

    add <- function(x, y) { return(x + y) } -> Option C
  4. Quick Check:

    Arguments inside function() and return() used [OK]
Hint: Put arguments inside function() parentheses [OK]
Common Mistakes:
  • Placing arguments outside function()
  • Missing braces {} around function body
  • Incorrect assignment syntax
3. What will be the output of the following R code?
multiply <- function(a, b) {
  result <- a * b
  return(result)
}
multiply(3, 4)
medium
A. 12
B. 7
C. 34
D. Error

Solution

  1. Step 1: Understand function behavior

    The function multiply takes two numbers and returns their product.
  2. Step 2: Calculate the product of 3 and 4

    3 * 4 equals 12, so the function returns 12.
  3. Final Answer:

    12 -> Option A
  4. Quick Check:

    3 * 4 = 12 [OK]
Hint: Multiply inputs and return result to get output [OK]
Common Mistakes:
  • Adding instead of multiplying
  • Concatenating numbers as strings
  • Forgetting to return the result
4. Identify the error in this R function definition:
sum_values <- function(x, y) 
  total <- x + y
  return(total)
}
medium
A. Function name is invalid
B. Missing opening brace { after function()
C. Incorrect use of return()
D. Arguments should be inside square brackets []

Solution

  1. Step 1: Check function body braces

    The function body must be enclosed in braces { } immediately after function() declaration.
  2. Step 2: Locate missing brace

    The code lacks an opening brace { after function(x, y), causing syntax error.
  3. Final Answer:

    Missing opening brace { after function() -> Option B
  4. Quick Check:

    Function body needs { } [OK]
Hint: Always put { after function() to start body [OK]
Common Mistakes:
  • Omitting braces around function body
  • Placing return outside function
  • Using wrong brackets for arguments
5. You want to write a function filter_positive that takes a numeric vector and returns only the positive numbers. Which function definition correctly does this in R?
hard
A. filter_positive <- function(vec) { return(vec[vec == 0]) }
B. filter_positive <- function(vec) { return(vec[vec < 0]) }
C. filter_positive <- function(vec) { vec > 0 }
D. filter_positive <- function(vec) { return(vec[vec > 0]) }

Solution

  1. Step 1: Understand filtering in R

    To get positive numbers, select elements where vec > 0.
  2. Step 2: Check return statement

    filter_positive <- function(vec) { return(vec[vec > 0]) } returns vec elements where condition vec > 0 is TRUE, correctly filtering positives.
  3. Final Answer:

    filter_positive <- function(vec) { return(vec[vec > 0]) } -> Option D
  4. Quick Check:

    Filter with vec[vec > 0] returns positives [OK]
Hint: Use vec[vec > 0] to filter positive numbers [OK]
Common Mistakes:
  • Using wrong comparison operator
  • Not returning filtered vector
  • Returning logical vector instead of values
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