modp

Positive modulo function

MuPAD® notebooks will be removed in a future release. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.

Syntax

modp(x, m)

Description

If m <> 0, then modp(x, m) returns the value x - n*m where n = floor(x/m). If x and m have different signs, then modp(x, m) has the same sign as m. If m = 0, then modp(x, m) returns x. See Example 1.

By default, x mod m and _mod(x, m) are both equivalent to modp(x, m). You can redefine the modulo operator mod and its functional form _mod by using modp and mods. For example, after the assignment _mod:=mods, both the operator mod and the equivalent function _mod return remainders of least absolute value. See Example 2.

All functions return an error when one of the arguments is a floating-point number, a complex number, or not an arithmetical expression.

If one of the arguments is not a number, then a symbolic function call is returned. See Example 3.

modp is a kernel function.

Examples

Example 1

Find the modulus after division of these integers.

modp(27, 4), modp(27, -4), modp(-27, 4), modp(-27, -4)

Find the modulus after division by zero.

modp(9, 0), modp(-9, 0), modp(0, 0)

Find the modulus after division of these rational numbers.

modp(22/3, 5), modp(22, 5/3), modp(22/3, 5/4)

Example 2

By default the binary operator mod and the equivalent function _mod are both equivalent to modp. You can redefine _mod.

modp(11, 7), mods(11,7);
11 mod 7

_mod := mods:
11 mod 7

For further computations, define _mod as modp.

_mod := modp:

Example 3

If one of the arguments is not a number, then modp returns a symbolic function call.

delete x, m:
modp(x, m), modp(x, 2), modp(2, m)

When called with nonnumeric arguments, the function currently associated with _mod is printed in the operator notation.

_mod := mods:
modp(x, m), mods(x, m)

_mod := modp:
modp(x, m), mods(x, m)

Parameters

x

An integer, a rational number, or an arithmetical expression

m

An integer or an arithmetical expression

Overloaded By

m, x

See Also

MuPAD Domains

MuPAD Functions