Bird
Raised Fist0
Goprogramming~15 mins

Relational operators in Go - Mini Project: Build & Apply

Choose your learning style10 modes available
Relational Operators in Go
📖 Scenario: You are creating a simple program to compare ages of two friends to see who is older.
🎯 Goal: Build a Go program that uses relational operators to compare two age values and prints the comparison results.
📋 What You'll Learn
Create two integer variables with exact values
Create a boolean variable to store a comparison result
Use relational operators to compare the two ages
Print the results of the comparisons
💡 Why This Matters
🌍 Real World
Comparing values is common in programs that make decisions, like checking ages, prices, or scores.
💼 Career
Understanding relational operators is essential for any programming job because they help control the flow of logic.
Progress0 / 4 steps
1
Create age variables
Create two integer variables called ageAlice and ageBob with values 25 and 30 respectively.
Go
Hint

Use := to declare and assign variables in Go.

2
Create a boolean variable for comparison
Create a boolean variable called isAliceOlder and set it to the result of comparing if ageAlice is greater than ageBob using the relational operator >.
Go
Hint

Use the > operator to check if one number is greater than another.

3
Compare ages with other relational operators
Create three more boolean variables: isAliceYounger for ageAlice < ageBob, isSameAge for ageAlice == ageBob, and isNotSameAge for ageAlice != ageBob.
Go
Hint

Use <, ==, and != operators for less than, equal to, and not equal to comparisons.

4
Print the comparison results
Use fmt.Println to print the values of isAliceOlder, isAliceYounger, isSameAge, and isNotSameAge each on a new line. Remember to import the fmt package.
Go
Hint

Use fmt.Println(variable) to print each variable on its own line.

Practice

(1/5)
1. Which of the following relational operators in Go checks if two values are equal?
easy
A. >
B. !=
C. ==
D. <=

Solution

  1. Step 1: Understand the meaning of relational operators

    Relational operators compare two values and return true or false based on the comparison.
  2. Step 2: Identify the operator for equality

    The operator '==' checks if two values are equal in Go.
  3. Final Answer:

    == -> Option C
  4. Quick Check:

    Equality operator = == [OK]
Hint: Remember: double equals (==) means equal in Go [OK]
Common Mistakes:
  • Confusing '=' (assignment) with '==' (equality)
  • Using '!=' for equality check
  • Thinking '>' means equal
2. Which of the following is the correct syntax to check if variable a is not equal to variable b in Go?
easy
A. a !== b
B. a <> b
C. a =! b
D. a != b

Solution

  1. Step 1: Recall Go syntax for not equal operator

    In Go, the not equal operator is written as '!='.
  2. Step 2: Match the syntax with the options

    a != b uses 'a != b', which is correct syntax for not equal in Go.
  3. Final Answer:

    a != b -> Option D
  4. Quick Check:

    Not equal operator = != [OK]
Hint: Not equal in Go is always '!=' not '<>' or '!==' [OK]
Common Mistakes:
  • Using '<>' which is not valid in Go
  • Swapping '=' and '!' to '=!'
  • Using JavaScript style '!==' which is invalid in Go
3. What will be the output of the following Go code?
package main
import "fmt"
func main() {
    x := 10
    y := 20
    fmt.Println(x > y)
}
medium
A. false
B. 10
C. true
D. Compilation error

Solution

  1. Step 1: Understand the comparison x > y

    Variable x is 10 and y is 20. The expression checks if 10 is greater than 20.
  2. Step 2: Evaluate the expression

    Since 10 is not greater than 20, the expression evaluates to false.
  3. Final Answer:

    false -> Option A
  4. Quick Check:

    10 > 20 = false [OK]
Hint: Compare values carefully; 10 > 20 is false [OK]
Common Mistakes:
  • Assuming 10 > 20 is true
  • Confusing output with variable values
  • Expecting a number instead of boolean
4. Identify the error in the following Go code snippet:
package main
import "fmt"
func main() {
    a := 5
    b := 10
    if a = b {
        fmt.Println("Equal")
    }
}
medium
A. Variables 'a' and 'b' are not declared properly
B. The '=' operator is used instead of '==' in the if condition
C. Missing parentheses around the if condition
D. fmt.Println syntax is incorrect

Solution

  1. Step 1: Check the if condition syntax

    The condition uses 'a = b' which is an assignment, not a comparison.
  2. Step 2: Correct the operator for comparison

    To compare values, '==' must be used instead of '='.
  3. Final Answer:

    The '=' operator is used instead of '==' in the if condition -> Option B
  4. Quick Check:

    Use '==' for comparison, not '=' [OK]
Hint: Use '==' to compare, '=' only assigns [OK]
Common Mistakes:
  • Using '=' instead of '==' in conditions
  • Thinking parentheses are mandatory in Go if
  • Assuming fmt.Println syntax is wrong
5. Given the following Go code, what will be the output?
package main
import "fmt"
func main() {
    a := 15
    b := 15
    c := 20
    result := (a == b) && (c > b)
    fmt.Println(result)
}
hard
A. true
B. false
C. Compilation error
D. 15

Solution

  1. Step 1: Evaluate the first comparison (a == b)

    Both a and b are 15, so (a == b) is true.
  2. Step 2: Evaluate the second comparison (c > b)

    c is 20 and b is 15, so (c > b) is true.
  3. Step 3: Combine with logical AND

    Both conditions are true, so true && true is true.
  4. Final Answer:

    true -> Option A
  5. Quick Check:

    (15 == 15) && (20 > 15) = true [OK]
Hint: Both conditions true? Result is true [OK]
Common Mistakes:
  • Confusing && with || operator
  • Thinking one true means overall false
  • Expecting numeric output instead of boolean
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