Bird
Raised Fist0
Goprogramming~10 mins

Why functions are needed in Go - Test Your Understanding

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.

Go
func [1]() {
    println("Hello, friend!")
}
Drag options to blanks, or click blank then click option'
Agreet
Bmain
Chello
DsayHello
Attempts:
3 left
💡 Hint
Common Mistakes
Using main instead of greet.
Forgetting to name the function.
2fill in blank
medium

Complete the code to call the greet function.

Go
func main() {
    [1]()
}
Drag options to blanks, or click blank then click option'
Aprint
Bhello
Cgreet
DsayHello
Attempts:
3 left
💡 Hint
Common Mistakes
Calling a function that does not exist.
Forgetting the parentheses after the function name.
3fill in blank
hard

Fix the error in the function definition by completing the code.

Go
func greet[1] {
    println("Hello!")
}
Drag options to blanks, or click blank then click option'
A[]
B()
C<>
D{}
Attempts:
3 left
💡 Hint
Common Mistakes
Using curly braces {} right after the function name instead of parentheses.
Omitting parentheses entirely.
4fill in blank
hard

Fill both blanks to create a function that adds two numbers and returns the result.

Go
func add(a int, b int) [1] {
    return a [2] b
}
Drag options to blanks, or click blank then click option'
Aint
B+
Cstring
D-
Attempts:
3 left
💡 Hint
Common Mistakes
Using string as return type instead of int.
Using subtraction - instead of addition.
5fill in blank
hard

Fill all three blanks to create a function that checks if a number is even.

Go
func isEven(n int) [1] {
    return n [2] 2 [3] 0
}
Drag options to blanks, or click blank then click option'
Abool
B%
C==
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using int as return type instead of bool.
Using != instead of == for comparison.

Practice

(1/5)
1. Why do we use functions in Go programming?
func keyword defines a function.
easy
A. To make the program run faster
B. To write code only once without running it
C. To avoid using variables
D. To organize code into reusable blocks

Solution

  1. Step 1: Understand the purpose of functions

    Functions group code that performs a task so it can be reused easily.
  2. Step 2: Compare options with function benefits

    Only organizing code into reusable blocks matches the main reason for functions.
  3. Final Answer:

    To organize code into reusable blocks -> Option D
  4. Quick Check:

    Functions = reusable code blocks [OK]
Hint: Functions help reuse code easily [OK]
Common Mistakes:
  • Thinking functions make code run faster
  • Confusing functions with variables
  • Believing functions prevent code execution
2. Which of the following is the correct way to define a function in Go?
easy
A. func greet() { fmt.Println("Hello") }
B. function greet() { fmt.Println("Hello") }
C. def greet() { fmt.Println("Hello") }
D. func greet[] { fmt.Println("Hello") }

Solution

  1. Step 1: Recall Go function syntax

    Go uses func keyword followed by name and parentheses.
  2. Step 2: Check each option's syntax

    Only func greet() { fmt.Println("Hello") } uses correct Go syntax: func greet() { ... }.
  3. Final Answer:

    func greet() { fmt.Println("Hello") } -> Option A
  4. Quick Check:

    Go function syntax = func name() [OK]
Hint: Go functions start with 'func' keyword [OK]
Common Mistakes:
  • Using 'function' or 'def' instead of 'func'
  • Missing parentheses after function name
  • Using square brackets instead of parentheses
3. What will be the output of this Go program?
package main
import "fmt"
func greet() {
    fmt.Println("Hi there!")
}
func main() {
    greet()
    greet()
}
medium
A. Hi there! Hi there!
B. Hi there!
C. greet greet
D. No output

Solution

  1. Step 1: Identify function calls in main

    The main function calls greet() twice.
  2. Step 2: Understand greet function output

    Each greet() call prints "Hi there!" on a new line.
  3. Final Answer:

    Hi there! Hi there! -> Option A
  4. Quick Check:

    Two greet() calls = two lines printed [OK]
Hint: Count how many times function is called [OK]
Common Mistakes:
  • Assuming function prints only once
  • Confusing function name with output
  • Ignoring multiple calls in main
4. Find the error in this Go code snippet:
package main
import "fmt"
func sayHello {
    fmt.Println("Hello")
}
func main() {
    sayHello()
}
medium
A. No error, code runs fine
B. Missing import statement for fmt package
C. Missing parentheses after function name in definition
D. Function call syntax is wrong

Solution

  1. Step 1: Check function definition syntax

    Function definitions must have parentheses even if no parameters are used.
  2. Step 2: Verify other parts

    The function call sayHello() is correct. The package declaration and import are present, so the only syntax error is the missing parentheses after the function name in the definition.
  3. Final Answer:

    Missing parentheses after function name in definition -> Option C
  4. Quick Check:

    Function definition needs () [OK]
Hint: Function definitions always need () after name [OK]
Common Mistakes:
  • Ignoring missing parentheses in function definition
  • Thinking function call syntax is wrong
  • Believing the code has no errors
5. You want to print a greeting message multiple times without repeating code. Which approach best uses functions in Go?
hard
A. Write the print statement many times in main
B. Create a function that prints the message and call it repeatedly
C. Use a variable to store the message but print once
D. Write the print statement inside a loop without a function

Solution

  1. Step 1: Understand the goal

    We want to avoid repeating the same print code multiple times.
  2. Step 2: Evaluate options for reusability

    Only creating a function and calling it repeatedly avoids code repetition and organizes code well.
  3. Final Answer:

    Create a function that prints the message and call it repeatedly -> Option B
  4. Quick Check:

    Functions avoid repeating code [OK]
Hint: Use functions to avoid repeating code [OK]
Common Mistakes:
  • Repeating print statements instead of using functions
  • Using variables without reusing code
  • Ignoring functions and relying only on loops
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