# modulo

symmetric arithmetic remainder modulo m

# pmodulo

positive arithmetic remainder modulo m

## Calling Sequence

    i = modulo(n,m)

    i = pmodulo(n,m)

## Arguments

n

  real or polynomial vector or matrix

m

  real vector or matrix

## Description

`modulo` computes `i = n (modulo m)` i.e. remainder of `n` divided by `m` (`n` and `m` are integers).

`i = n - m .* int (n ./ m)`. Here the answer may be negative if `n` or `m` are negative.

`pmodulo` computes `i = n - m .* floor (n ./ m)` , the answer is positive or zero.

`modulo(x,0)` returns an error message: "Division by zero...". With ieee(2), `modulo(x,0)` returns `%nan`.

`pmodulo(x,0)` returns an error message: "Division by zero...". With ieee(2), `pmodulo(x,0)` returns `%nan`.

## Examples

    n=[1,2,10,15];m=[2,2,3,5];
    modulo(n,m)

    modulo(-3,9)
    pmodulo(-3,9)