Bird
Raised Fist0
Goprogramming~5 mins

Arithmetic operators in Go

Choose your learning style10 modes available
Introduction

Arithmetic operators help you do math with numbers in your program. They let you add, subtract, multiply, and divide values easily.

Calculating the total price of items in a shopping cart.
Finding the difference between two dates or times.
Increasing a player's score in a game.
Splitting a bill evenly among friends.
Converting units, like inches to centimeters.
Syntax
Go
result := a + b  // addition
result := a - b  // subtraction
result := a * b  // multiplication
result := a / b  // division
result := a % b  // remainder (modulus)

Use + to add, - to subtract, * to multiply, / to divide, and % to get the remainder.

Division between integers gives an integer result (no decimals). Use float types for decimal division.

Examples
Adds 5 and 3, then prints 8.
Go
sum := 5 + 3
fmt.Println(sum)  // prints 8
Subtracts 4 from 10, then prints 6.
Go
diff := 10 - 4
fmt.Println(diff)  // prints 6
Multiplies 7 by 6, then prints 42.
Go
product := 7 * 6
fmt.Println(product)  // prints 42
Divides 20 by 3 giving 6 (integer division), and remainder 2.
Go
quotient := 20 / 3
fmt.Println(quotient)  // prints 6
remainder := 20 % 3
fmt.Println(remainder)  // prints 2
Sample Program

This program shows how to use all basic arithmetic operators with two numbers and prints the results.

Go
package main

import "fmt"

func main() {
    a := 15
    b := 4

    sum := a + b
    diff := a - b
    product := a * b
    quotient := a / b
    remainder := a % b

    fmt.Println("Sum:", sum)
    fmt.Println("Difference:", diff)
    fmt.Println("Product:", product)
    fmt.Println("Quotient:", quotient)
    fmt.Println("Remainder:", remainder)
}
OutputSuccess
Important Notes

Remember that dividing two integers results in an integer. To get a decimal result, convert numbers to float64 first.

The modulus operator % only works with integers in Go.

Summary

Arithmetic operators let you do basic math in Go.

Use +, -, *, /, and % for addition, subtraction, multiplication, division, and remainder.

Integer division drops decimals; use floats for precise division.

Practice

(1/5)
1. Which arithmetic operator in Go is used to find the remainder of a division?
easy
A. /
B. +
C. *
D. %

Solution

  1. Step 1: Understand the remainder operation

    The remainder operator returns what is left after division.
  2. Step 2: Identify the correct operator in Go

    In Go, the remainder operator is represented by the percent sign '%'.
  3. Final Answer:

    % -> Option D
  4. Quick Check:

    Remainder = % [OK]
Hint: Remainder uses % like in many languages [OK]
Common Mistakes:
  • Confusing division / with remainder %
  • Using * for remainder
  • Using + for remainder
2. Which of the following is the correct way to write a multiplication operation in Go?
easy
A. a x b
B. a . b
C. a * b
D. a & b

Solution

  1. Step 1: Recall Go's multiplication syntax

    Go uses the asterisk '*' symbol for multiplication.
  2. Step 2: Check each option

    Only 'a * b' uses the correct multiplication operator.
  3. Final Answer:

    a * b -> Option C
  4. Quick Check:

    Multiplication = * [OK]
Hint: Use * for multiplication, not x or & [OK]
Common Mistakes:
  • Using 'x' instead of '*'
  • Using '.' or '&' for multiplication
  • Confusing syntax with other languages
3. What is the output of this Go code?
package main
import "fmt"
func main() {
  a := 7
  b := 3
  fmt.Println(a / b)
}
medium
A. 2.3333333
B. 2
C. 3
D. 0

Solution

  1. Step 1: Identify variable types and operation

    Both a and b are integers, so division is integer division.
  2. Step 2: Calculate integer division result

    7 divided by 3 is 2.333..., but integer division drops decimals, so result is 2.
  3. Final Answer:

    2 -> Option B
  4. Quick Check:

    Integer division 7/3 = 2 [OK]
Hint: Integer division drops decimals, result is int [OK]
Common Mistakes:
  • Expecting float result
  • Confusing integer division with float division
  • Using wrong operator
4. Find the error in this Go code snippet:
package main
import "fmt"
func main() {
  x := 10
  y := 0
  fmt.Println(x / y)
}
medium
A. Division by zero causes runtime panic
B. Syntax error: missing semicolon
C. Variable y is not declared
D. No error, prints 0

Solution

  1. Step 1: Analyze the division operation

    The code divides x by y, where y is zero.
  2. Step 2: Understand Go's behavior on division by zero

    Dividing by zero causes a runtime panic (error) in Go.
  3. Final Answer:

    Division by zero causes runtime panic -> Option A
  4. Quick Check:

    Division by zero = runtime panic [OK]
Hint: Never divide by zero; it crashes the program [OK]
Common Mistakes:
  • Thinking it prints 0
  • Expecting compile-time error
  • Ignoring runtime panic
5. Given the Go code below, what is the output?
package main
import "fmt"
func main() {
  a := 15
  b := 4
  c := a % b
  d := a / b
  fmt.Println(c + d)
}
hard
A. 6
B. 3
C. 19
D. 4

Solution

  1. Step 1: Calculate remainder c = a % b

    15 % 4 equals 3 because 4*3=12 and 15-12=3.
  2. Step 2: Calculate integer division d = a / b

    15 / 4 equals 3 because integer division drops decimals.
  3. Step 3: Add c + d

    3 + 3 equals 6.
  4. Final Answer:

    6 -> Option A
  5. Quick Check:

    15 % 4 = 3, 15 / 4 = 3, 3 + 3 = 6 [OK]
Hint: Add remainder and integer division results carefully [OK]
Common Mistakes:
  • Miscomputing remainder
  • Using float division instead of integer
  • Adding wrong values
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