➕ Go Arithmetic Operators – Perform Math Operations in Go (2025 Guide)
🧲 Introduction – Why Arithmetic Operators Matter in Go
Arithmetic operators are used to perform mathematical calculations like addition, subtraction, multiplication, division, and modulo. Whether you’re building a calculator, processing data, or performing logic in backend systems, mastering Go’s arithmetic operators is foundational.
🎯 In this section, you’ll learn:
- The full list of arithmetic operators in Go
- Syntax rules with examples and outputs
- How Go handles integer vs float division
- Real-world usage and operator precedence
➗ List of Arithmetic Operators in Go
| Operator | Symbol | Description | Example | Output |
|---|---|---|---|---|
| Addition | + | Adds two values | 5 + 3 | 8 |
| Subtract | - | Subtracts right from left | 10 - 4 | 6 |
| Multiply | * | Multiplies values | 6 * 7 | 42 |
| Divide | / | Divides left by right | 20 / 5 | 4 |
| Modulo | % | Returns remainder | 10 % 3 | 1 |
🔢 Syntax – Using Arithmetic Operators in Go
package main
import "fmt"
func main() {
a := 15
b := 4
fmt.Println("Addition:", a+b)
fmt.Println("Subtraction:", a-b)
fmt.Println("Multiplication:", a*b)
fmt.Println("Division:", a/b)
fmt.Println("Modulo:", a%b)
}
📤 Output:
Addition: 19
Subtraction: 11
Multiplication: 60
Division: 3
Modulo: 3
🧠 Note: Division between two integers always produces an integer result (truncated).
🎯 Float Division Example
x := 10.0
y := 4.0
fmt.Println(x / y) // Output: 2.5
If either operand is a float, the result will be a floating-point value.
🚫 Type Mismatch: Must Match Types
You cannot mix int and float64 directly:
var a int = 5
var b float64 = 2.5
// fmt.Println(a + b) ❌ Compile-time error
✅ Fix:
fmt.Println(float64(a) + b)
🧪 Example – Arithmetic Expression
a, b, c := 10, 3, 2
result := a + b*c - a/b
fmt.Println(result)
🧮 Breakdown:
a + (b * c) - (a / b)
10 + 6 - 3 = 13
📤 Output:
13
🧠 Operator Precedence in Go
| Precedence (High → Low) | Operators |
|---|---|
| 1 (Highest) | *, /, % |
| 2 | +, - |
Use parentheses () to override precedence for complex expressions.
📌 Summary – Recap & Next Steps
Go’s arithmetic operators are straightforward but require attention to types and division behavior. These operators are frequently used in algorithms, loops, and conditions.
🔍 Key Takeaways:
- Use
+,-,*,/,%for basic arithmetic - Integer division discards the decimal part
- Use
float64for precise division - Match operand types before performing operations
- Use parentheses to control order of operations
⚙️ Next: Explore Relational Operators in Go to compare values using ==, !=, <, > and more.
❓ FAQs – Arithmetic Operators in Go
❓ What happens when I divide two integers in Go?
✅ Go returns an integer result. The decimal part is truncated.
❓ How do I perform floating-point division?
✅ Use float32 or float64 operands:
fmt.Println(10.0 / 4.0) // Output: 2.5
❓ Can I use arithmetic operators on strings or booleans?
✅ No. Arithmetic operators only work with numeric types (int, float, complex).
❓ What does % (modulo) return?
✅ It returns the remainder of an integer division: 10 % 3 = 1
❓ How can I change precedence in an expression?
✅ Use parentheses to group operations:
result := (a + b) * c
Share Now :
