Multiplicative Operators
Binary "*"
multiplies two numbers.
Binary "/"
divides two numbers.
Binary "%"
is the modulo operator, which computes the division remainder of its first argument with respect to its second argument. Given integer operands $m
and $n
: If $n
is positive, then $m % $n
is $m
minus the largest multiple of $n
less than or equal to $m
. If $n
is negative, then $m % $n
is $m
minus the smallest multiple of $n
that is not less than $m
(that is, the result will be less than or equal to zero). If the operands $m
and $n
are floating point values and the absolute value of $n
(that is abs($n)
) is less than (UV_MAX + 1)
, only the integer portion of $m
and $n
will be used in the operation (Note: here UV_MAX
means the maximum of the unsigned integer type). If the absolute value of the right operand (abs($n)
) is greater than or equal to (UV_MAX + 1)
, "%"
computes the floating-point remainder $r
in the equation ($r = $m - $i*$n)
where $i
is a certain integer that makes $r
have the same sign as the right operand $n
(not as the left operand $m
like C function fmod()
) and the absolute value less than that of $n
. Note that when use integer
is in scope, "%"
gives you direct access to the modulo operator as implemented by your C compiler. This operator is not as well defined for negative operands, but it will execute faster.
Binary "x"
is the repetition operator. In scalar context or if the left operand is not enclosed in parentheses, it returns a string consisting of the left operand repeated the number of times specified by the right operand. In list context, if the left operand is enclosed in parentheses or is a list formed by qw/STRING/
, it repeats the list. If the right operand is zero or negative (raising a warning on negative), it returns an empty string or an empty list, depending on the context.
print '-' x 80; # print row of dashes print "\t" x ($tab/8), ' ' x ($tab%8); # tab over @ones = (1) x 80; # a list of 80 1's @ones = (5) x @ones; # set all elements to 5
Please login to continue.