Lua supports the usual arithmetic operators: the binary +
(addition), -
(subtraction), *
(multiplication), /
(division), %
(modulo), and ^
(exponentiation); and unary -
(negation). If the operands are numbers, or strings that can be converted to numbers (see Coercion), then all operations have the usual meaning. Exponentiation works for any exponent. For instance, x^(-0.5)
computes the inverse of the square root of x
. Modulo is defined as
a % b == a - math.floor(a/b)*b
That is, it is the remainder of a division that rounds the quotient towards minus infinity.