|
FreeMat
|
Section: Mathematical Functions
Computes the remainder after division of an array. The syntax for its use is
y = rem(x,n)
where x is matrix, and n is the base of the modulus. The effect of the rem operator is to add or subtract multiples of n to the vector x so that each element x_i is between 0 and n (strictly). Note that n does not have to be an integer. Also, n can either be a scalar (same base for all elements of x), or a vector (different base for each element of x).
Note that the following are defined behaviors:
rem(x,0) = nan@ rem(x,x) = 0@ for nonzero x rem(x,n)@ has the same sign as x for all other cases. Note that rem and mod return the same value if x and n are of the same sign. But differ by n if x and y have different signs.
The following examples show some uses of rem arrays.
--> rem(18,12) ans = 6 --> rem(6,5) ans = 1 --> rem(2*pi,pi) ans = 0
Here is an example of using rem to determine if integers are even or odd:
--> rem([1,3,5,2],2) ans = 1 1 1 0
Here we use the second form of rem, with each element using a separate base.
--> rem([9 3 2 0],[1 0 2 2])
ans =
0 NaN 0 0