📖 Scenario: Imagine you want to create a simple program that keeps printing a message forever, like a clock ticking every second. This helps understand how infinite loops work in programming.
🎯 Goal: Build a Go program that uses an infinite loop to print the message "Tick" repeatedly.
📋 What You'll Learn
Create a variable to hold the message string
Use an infinite for loop to repeat the action
Print the message inside the loop
💡 Why This Matters
🌍 Real World
Infinite loops are used in programs that need to keep running, like servers or clocks.
💼 Career
Understanding infinite loops helps in writing programs that wait for events or run continuously without stopping.
Progress0 / 4 steps
1
DATA SETUP: Create a message variable
Create a variable called message and set it to the string "Tick".
Go
Hint
Use message := "Tick" to create the variable.
2
CONFIGURATION: Prepare for the infinite loop
Keep the variable message and add an infinite for loop below it.
Go
Hint
Use for { to start an infinite loop in Go.
3
CORE LOGIC: Print the message inside the infinite loop
Inside the infinite for loop, use fmt.Println(message) to print the message repeatedly.
Go
Hint
Use fmt.Println(message) inside the loop to print the message.
4
OUTPUT: Run the program to see the infinite output
Run the program. It should print Tick repeatedly without stopping.
Go
Hint
The program will print Tick many times. You can stop it manually.
Practice
(1/5)
1. What does the following Go code do?
for { }
easy
A. Runs an infinite loop that never stops
B. Runs a loop 10 times
C. Runs a loop only once
D. Causes a syntax error
Solution
Step 1: Understand the loop syntax
The code uses for { } which is Go's way to write an infinite loop without conditions.
Step 2: Analyze loop behavior
Since there is no break or condition, the loop runs forever without stopping.
Final Answer:
Runs an infinite loop that never stops -> Option A
Quick Check:
for { } means infinite loop [OK]
Hint: for { } always means infinite loop in Go [OK]
Common Mistakes:
Thinking it runs a fixed number of times
Assuming it causes a syntax error
Confusing with loops that have conditions
2. Which of the following is the correct syntax for an infinite loop in Go?
easy
A. for i := 0; i < 10; i++ { }
B. loop forever { }
C. for { }
D. while true { }
Solution
Step 1: Review Go loop syntax
Go does not have a while or loop keyword; infinite loops use for { }.
Step 2: Identify correct infinite loop
for { } uses for { }, which is the correct infinite loop syntax in Go.
Final Answer:
for { } -> Option C
Quick Check:
Go infinite loop syntax = for { } [OK]
Hint: Remember: Go uses for { } for infinite loops [OK]
Common Mistakes:
Using while or loop keywords (not in Go)
Confusing for loops with conditions as infinite
Syntax errors from invalid keywords
3. What will be the output of this Go program?
package main
import "fmt"
func main() {
count := 0
for {
if count == 3 {
break
}
fmt.Println(count)
count++
}
}
medium
A. 0 1 2
B. 0 1 2 3
C. Infinite printing of numbers
D. No output
Solution
Step 1: Understand loop and break condition
The loop runs infinitely but breaks when count equals 3.
Step 2: Trace output values
It prints count values 0, 1, 2 then breaks before printing 3.
Final Answer:
0 1 2 -> Option A
Quick Check:
Loop breaks at count==3, prints 0 to 2 [OK]
Hint: Break stops infinite loop at condition [OK]
Common Mistakes:
Expecting 3 to be printed
Thinking loop runs forever
Ignoring break statement
4. Identify the problem in this Go code that causes an infinite loop and fix it:
package main
import "fmt"
func main() {
i := 0
for i < 5 {
fmt.Println(i)
}
}
medium
A. Add break statement without increment
B. Change for to for { }
C. Remove the loop entirely
D. Add i++ inside the loop to increment i
Solution
Step 1: Identify loop condition and variable
The loop runs while i < 5 but i is never changed inside the loop.
Step 2: Fix infinite loop by incrementing i
Adding i++ inside the loop updates i, allowing the loop to end.
Final Answer:
Add i++ inside the loop to increment i -> Option D
Quick Check:
Increment loop variable to avoid infinite loop [OK]
Hint: Always update loop variable to prevent infinite loops [OK]
Common Mistakes:
Forgetting to increment loop variable
Adding break without changing i causes infinite loop
Changing loop to infinite loop syntax accidentally
5. How can you safely implement an infinite loop in Go that stops after 5 seconds?
hard
A. Use for i := 0; i < 5; i++ { }
B. Use for { } with time.After and break when 5 seconds pass
C. Use while true with a timer
D. Use for { } without any break or condition
Solution
Step 1: Understand infinite loop with timeout
Use for { } for infinite loop and time.After to wait 5 seconds.
Step 2: Break loop after 5 seconds
Inside loop, check if 5 seconds passed and use break to stop loop safely.
Final Answer:
Use for { } with time.After and break when 5 seconds pass -> Option B
Quick Check:
Infinite loop + timer + break = safe stop [OK]
Hint: Combine for { } with timer and break to stop [OK]
Common Mistakes:
Using invalid while syntax
Not breaking loop causes infinite run
Using fixed count loop instead of infinite
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.