📖 Scenario: You are curious about the Go programming language and want to create a simple program that introduces Go to beginners.
🎯 Goal: Build a small Go program that stores a brief description of Go and then prints it out.
📋 What You'll Learn
Create a string variable with a description of Go
Create a variable to hold the Go version
Combine the description and version into a message
Print the message to the console
💡 Why This Matters
🌍 Real World
Go is widely used for building fast and reliable software like web servers and tools.
💼 Career
Knowing how to write basic Go programs is essential for roles in backend development and cloud computing.
Progress0 / 4 steps
1
Create a description variable
Create a string variable called description and set it to the exact text: "Go is an open source programming language."
Go
Hint
Use := to create and assign the variable in one step.
2
Add a Go version variable
Add a string variable called version and set it to the exact text: "1.20"
Go
Hint
Remember to use := to declare and assign the variable.
3
Combine description and version
Create a new string variable called message that combines description and version with a space and the text "version" in between. Use fmt.Sprintf to format it exactly as: "Go is an open source programming language. version 1.20"
Go
Hint
Use fmt.Sprintf to create the formatted string.
4
Print the message
Use fmt.Println to print the message variable to the console.
Go
Hint
Use fmt.Println(message) to print the message.
Practice
(1/5)
1. What is Go primarily used for?
easy
A. Designing websites with HTML
B. Building fast and reliable software
C. Creating video games only
D. Writing scripts for Photoshop
Solution
Step 1: Understand Go's purpose
Go is designed to build software that runs quickly and reliably.
Step 2: Compare options
Options A, C, and D describe other technologies or limited uses, not Go's main purpose.
Final Answer:
Building fast and reliable software -> Option B
Quick Check:
Go = fast, reliable software [OK]
Hint: Go is known for speed and reliability [OK]
Common Mistakes:
Confusing Go with web design languages
Thinking Go is only for games
Assuming Go is a scripting tool
2. Which of the following is the correct way to start a Go program?
easy
A. package main
func main() {
// code
}
B. start program {
// code
}
C. begin main() {
// code
}
D. function main() {
// code
}
Solution
Step 1: Recognize Go program structure
Go programs start with a package declaration and a main function.
Step 2: Check syntax correctness
package main
func main() {
// code
} uses correct Go syntax: 'package main' and 'func main()'. Others use invalid keywords or syntax.
Final Answer:
package main\n\nfunc main() {\n // code\n} -> Option A
Quick Check:
Go starts with package main and func main() [OK]
Hint: Go programs start with 'package main' and 'func main()' [OK]
Common Mistakes:
Using 'start' or 'begin' instead of 'package' and 'func'
Omitting the package declaration
Using wrong function syntax
3. What will be the output of this Go program?
package main
import "fmt"
func main() {
fmt.Println("Hello, Go!")
}
medium
A. Hello Go
B. fmt.Println("Hello, Go!")
C. Hello, Go!
D. Error: missing main function
Solution
Step 1: Understand fmt.Println usage
fmt.Println prints the string with a newline to the console.
Step 2: Check the program structure
The program has a valid main function and imports fmt correctly, so it runs and prints the string.
Final Answer:
Hello, Go! -> Option C
Quick Check:
fmt.Println prints text with newline [OK]
Hint: fmt.Println prints exactly what is inside quotes [OK]
Common Mistakes:
Expecting output without quotes
Confusing print with return
Thinking program lacks main function
4. Identify the error in this Go code:
package main
import "fmt"
func main() {
fmt.Println("Welcome to Go")
fmt.Println(Welcome to Go)
}
medium
A. Missing quotes around string in second fmt.Println
B. Missing import statement
C. No main function defined
D. Incorrect package name
Solution
Step 1: Check string usage in fmt.Println
The second fmt.Println lacks quotes around the string, causing a syntax error.
Step 2: Verify other parts
Import and main function are correct, package name is valid.
Final Answer:
Missing quotes around string in second fmt.Println -> Option A
Quick Check:
Strings need quotes in fmt.Println [OK]
Hint: Strings must be in quotes inside fmt.Println [OK]
Common Mistakes:
Forgetting quotes around strings
Assuming import is missing
Thinking main function is absent
5. You want to write a Go program that prints "Go is fun!" only if a variable fun is true. Which code snippet correctly does this?
hard
A. package main
import "fmt"
func main() {
fun := true
fmt.Println("Go is fun!")
}
B. package main
import "fmt"
func main() {
fun := true
if fun == false {
fmt.Println("Go is fun!")
}
}
C. package main
import "fmt"
func main() {
fun := false
if fun {
fmt.Println("Go is fun!")
}
}
D. package main
import "fmt"
func main() {
fun := true
if fun {
fmt.Println("Go is fun!")
}
}
Solution
Step 1: Understand the condition to print
The program should print only if 'fun' is true, so the if condition must check 'fun' directly.
Step 2: Analyze each option
package main
import "fmt"
func main() {
fun := true
if fun {
fmt.Println("Go is fun!")
}
} checks 'if fun' when fun is true, so it prints. package main
import "fmt"
func main() {
fun := true
if fun == false {
fmt.Println("Go is fun!")
}
} prints if fun is false, wrong. package main
import "fmt"
func main() {
fun := false
if fun {
fmt.Println("Go is fun!")
}
} fun is false, so no print. package main
import "fmt"
func main() {
fun := true
fmt.Println("Go is fun!")
} prints unconditionally, ignoring fun.
Final Answer:
package main\nimport \"fmt\"\nfunc main() {\n fun := true\n if fun {\n fmt.Println(\"Go is fun!\")\n }\n} -> Option D
Quick Check:
Print only if fun is true [OK]
Hint: Use 'if fun' to check true boolean variable [OK]
Common Mistakes:
Checking if fun == false instead of fun
Setting fun to false by mistake
Printing without condition
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.