TL ; DR:
The modulo operator (
%) calculates the remainder of dividing two values:fmt.Println(10 % 2) // Output: 0 fmt.Println(15 % 4) // Output: 3 fmt.Println(20 % 3) // Output: 2It can also be used with variables:
a := 2 b := 4 fmt.Println(b % a) // Output: 0 fmt.Println(11 % b) // Output: 3
Full lesson:
Remember how we first learn about the division of two integer numbers in primary school?
The quotient is the number of times a division is completed fully, while the remainder is the amount left that doesn't entirely go into the divisor.
Here are some examples:
10 / 2 = quotient 5, remainder 0
15 / 4 = quotient 3, remainder 3
20 / 3 = quotient 6, remainder 2
The modulo operator:
The modulo operator (%) calculates the remainder of dividing two values:
fmt.Println(10 % 2) // Output: 0
fmt.Println(15 % 4) // Output: 3
fmt.Println(20 % 3) // Output: 2
It can also be used with variables:
a := 2
b := 4
fmt.Println(b % a) // Output: 0
fmt.Println(11 % b) // Output: 3
Integer division
When both operands are integers, Go's / operator returns the quotient:
a := 2
b := 3
c := b / a
fmt.Println(c) // Output: 1
Quotient and remainder:
In programming, we combine both these concepts to get the quotient and remainder of some division:
// Let's divide 26 by 3:
quotient := 26 / 3
remainder := 26 % 3
fmt.Println(quotient) // Output: 8
fmt.Println(remainder) // Output: 2
Assignment
Follow the Coding Tutorial and let's practice with quotient and remainder!
Hint
Look at the examples above if you get stuck.
Free plan: 30 tutor messages. PRO is unlimited.
