What is the purpose of an if–else statement in Go?
An if–else statement lets the program choose between two paths based on a condition. If the condition is true, it runs one block of code; if false, it runs another.
Click to reveal answer
beginner
How do you write a simple if statement in Go?
Use the keyword if followed by a condition, then a block of code in curly braces. Example:
if x > 10 {
fmt.Println("x is greater than 10")
}
Click to reveal answer
beginner
What is the syntax for an if–else statement in Go?
You write if with a condition and code block, then else with another code block. Example:
if x > 10 {
fmt.Println("big")
} else {
fmt.Println("small")
}
Click to reveal answer
intermediate
Can you use multiple conditions with if–else in Go?
Yes, you can chain conditions using else if to check many cases. Example:
if x > 10 {
fmt.Println("big")
} else if x == 10 {
fmt.Println("equal")
} else {
fmt.Println("small")
}
Click to reveal answer
beginner
What happens if the if condition is false and there is no else block?
If the if condition is false and there is no else, the program just skips the if block and continues running the next code.
Click to reveal answer
What keyword starts an if condition in Go?
Awhen
Bif
Ccondition
Dcheck
✗ Incorrect
The keyword if is used to start a condition check in Go.
What does the else block do in an if–else statement?
ARepeats the if block
BRuns code if the if condition is true
CEnds the program
DRuns code if the if condition is false
✗ Incorrect
The else block runs only when the if condition is false.
Which of these is the correct way to write an if statement in Go?
Aif x > 5: fmt.Println("yes")
Bif (x > 5) then { fmt.Println("yes") }
Cif x > 5 { fmt.Println("yes") }
Dif x > 5 do { fmt.Println("yes") }
✗ Incorrect
Go uses if with condition and curly braces for the code block, no extra keywords like then or do.
How do you check multiple conditions in Go?
AUse else if between if and else blocks
BUse multiple if statements without else
CUse switch only
DUse for loops
✗ Incorrect
You chain conditions with else if to check multiple cases in order.
What happens if the if condition is true and there is an else block?
AOnly the if block runs, else block is skipped
BBoth if and else blocks run
COnly else block runs
DProgram crashes
✗ Incorrect
When the if condition is true, only the if block runs; the else block is skipped.
Explain how an if–else statement controls the flow of a Go program.
Think about choosing between two paths based on a yes/no question.
You got /4 concepts.
Write a simple Go if–else statement that prints "Even" if a number is even, and "Odd" if it is odd.
Use x % 2 == 0 to check even numbers.
You got /4 concepts.
Practice
(1/5)
1. What does an if-else statement do in Go?
easy
A. It repeats code multiple times.
B. It declares a variable.
C. It defines a new function.
D. It chooses between two paths based on a condition.
Solution
Step 1: Understand the purpose of if-else
An if-else statement checks a condition and runs code based on whether it is true or false.
Step 2: Compare with other options
Repeating code is done by loops, functions define reusable code, and variables store data, so these are not correct.
Final Answer:
It chooses between two paths based on a condition. -> Option D
Quick Check:
If-else = choose path [OK]
Hint: If-else picks true or false path fast [OK]
Common Mistakes:
Confusing if-else with loops
Thinking if-else defines functions
Mixing if-else with variable declaration
2. Which of these is the correct syntax for an if-else statement in Go?
easy
A. if x > 10 { fmt.Println("Big") } else { fmt.Println("Small") }
B. if (x > 10) then { fmt.Println("Big") } else { fmt.Println("Small") }
C. if x > 10: fmt.Println("Big") else: fmt.Println("Small")
D. if x > 10 { fmt.Println("Big") } elseif { fmt.Println("Small") }
Solution
Step 1: Check Go if-else syntax
Go uses braces {} for blocks and no parentheses or colons around conditions.
Step 2: Identify correct syntax
if x > 10 { fmt.Println("Big") } else { fmt.Println("Small") } matches Go syntax exactly. Options A, B, and D use wrong keywords or punctuation.
Final Answer:
if x > 10 { fmt.Println("Big") } else { fmt.Println("Small") } -> Option A
Quick Check:
Go if-else uses braces {} [OK]
Hint: Remember: Go uses braces, no then or colons [OK]
Common Mistakes:
Using 'then' keyword
Adding colons after conditions
Writing 'elseif' instead of 'else if'
3. What will this Go code print?
package main
import "fmt"
func main() {
x := 5
if x > 10 {
fmt.Println("Greater")
} else {
fmt.Println("Smaller or equal")
}
}
medium
A. Greater
B. Smaller or equal
C. 5
D. No output
Solution
Step 1: Check the value of x
x is assigned 5, which is not greater than 10.
Step 2: Follow the if-else logic
Since x > 10 is false, the else block runs, printing "Smaller or equal".
Final Answer:
Smaller or equal -> Option B
Quick Check:
5 > 10? No, print else [OK]
Hint: Check condition truth, then pick output [OK]
Common Mistakes:
Assuming 5 is greater than 10
Confusing if and else blocks
Expecting variable value as output
4. Find the error in this Go code:
package main
import "fmt"
func main() {
x := 7
if x > 5
fmt.Println("Big")
else
fmt.Println("Small")
}
medium
A. Missing braces {} around if and else blocks
B. Wrong import statement
C. Variable x not declared
D. Missing semicolon after if condition
Solution
Step 1: Check if-else block syntax
In Go, if and else blocks must use braces {} to group statements.
Step 2: Identify missing braces
The code lacks braces around the print statements, causing a syntax error.
Final Answer:
Missing braces {} around if and else blocks -> Option A
Quick Check:
Go requires braces for blocks [OK]
Hint: Always use braces {} for if and else blocks [OK]
Common Mistakes:
Omitting braces in if-else
Thinking semicolons are needed after conditions
Confusing import errors with syntax errors
5. You want to print "Even" if a number is even, otherwise print "Odd". Which Go code correctly does this?
hard
A. if num % 2 = 0 { fmt.Println("Even") } else { fmt.Println("Odd") }
B. if num / 2 == 0 { fmt.Println("Even") } else { fmt.Println("Odd") }
C. if num % 2 == 0 { fmt.Println("Even") } else { fmt.Println("Odd") }
D. if num % 2 != 0 { fmt.Println("Even") } else { fmt.Println("Odd") }
Solution
Step 1: Understand how to check even numbers
A number is even if remainder when divided by 2 is zero (num % 2 == 0).
Step 2: Check each option's condition
if num % 2 == 0 { fmt.Println("Even") } else { fmt.Println("Odd") } uses correct equality check. if num / 2 == 0 { fmt.Println("Even") } else { fmt.Println("Odd") } divides instead of modulo. if num % 2 = 0 { fmt.Println("Even") } else { fmt.Println("Odd") } uses assignment (=) instead of comparison (==). if num % 2 != 0 { fmt.Println("Even") } else { fmt.Println("Odd") } reverses logic.
Final Answer:
if num % 2 == 0 { fmt.Println("Even") } else { fmt.Println("Odd") } -> Option C
Quick Check:
Modulo equals zero means even [OK]
Hint: Use modulo % and == 0 to check even [OK]
Common Mistakes:
Using / instead of %
Using = instead of ==
Reversing condition logic
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.