Trait malachite_base::num::arithmetic::traits::DivAssignMod
source · pub trait DivAssignMod<RHS = Self> {
type ModOutput;
// Required method
fn div_assign_mod(&mut self, other: RHS) -> Self::ModOutput;
}
Expand description
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity, and the remainder has the same sign as the divisor (second input).
The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.
Required Associated Types§
Required Methods§
fn div_assign_mod(&mut self, other: RHS) -> Self::ModOutput
Implementations on Foreign Types§
source§impl DivAssignMod for i8
impl DivAssignMod for i8
source§fn div_assign_mod(&mut self, other: i8) -> i8
fn div_assign_mod(&mut self, other: i8) -> i8
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity, and the remainder has the same sign as the second number.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0, or if self
is $t::MIN
and other
is -1.
§Examples
See here.
type ModOutput = i8
source§impl DivAssignMod for i16
impl DivAssignMod for i16
source§fn div_assign_mod(&mut self, other: i16) -> i16
fn div_assign_mod(&mut self, other: i16) -> i16
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity, and the remainder has the same sign as the second number.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0, or if self
is $t::MIN
and other
is -1.
§Examples
See here.
type ModOutput = i16
source§impl DivAssignMod for i32
impl DivAssignMod for i32
source§fn div_assign_mod(&mut self, other: i32) -> i32
fn div_assign_mod(&mut self, other: i32) -> i32
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity, and the remainder has the same sign as the second number.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0, or if self
is $t::MIN
and other
is -1.
§Examples
See here.
type ModOutput = i32
source§impl DivAssignMod for i64
impl DivAssignMod for i64
source§fn div_assign_mod(&mut self, other: i64) -> i64
fn div_assign_mod(&mut self, other: i64) -> i64
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity, and the remainder has the same sign as the second number.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0, or if self
is $t::MIN
and other
is -1.
§Examples
See here.
type ModOutput = i64
source§impl DivAssignMod for i128
impl DivAssignMod for i128
source§fn div_assign_mod(&mut self, other: i128) -> i128
fn div_assign_mod(&mut self, other: i128) -> i128
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity, and the remainder has the same sign as the second number.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0, or if self
is $t::MIN
and other
is -1.
§Examples
See here.
type ModOutput = i128
source§impl DivAssignMod for isize
impl DivAssignMod for isize
source§fn div_assign_mod(&mut self, other: isize) -> isize
fn div_assign_mod(&mut self, other: isize) -> isize
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity, and the remainder has the same sign as the second number.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0, or if self
is $t::MIN
and other
is -1.
§Examples
See here.
type ModOutput = isize
source§impl DivAssignMod for u8
impl DivAssignMod for u8
source§fn div_assign_mod(&mut self, other: u8) -> u8
fn div_assign_mod(&mut self, other: u8) -> u8
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq r < y$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0.
§Examples
See here.
type ModOutput = u8
source§impl DivAssignMod for u16
impl DivAssignMod for u16
source§fn div_assign_mod(&mut self, other: u16) -> u16
fn div_assign_mod(&mut self, other: u16) -> u16
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq r < y$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0.
§Examples
See here.
type ModOutput = u16
source§impl DivAssignMod for u32
impl DivAssignMod for u32
source§fn div_assign_mod(&mut self, other: u32) -> u32
fn div_assign_mod(&mut self, other: u32) -> u32
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq r < y$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0.
§Examples
See here.
type ModOutput = u32
source§impl DivAssignMod for u64
impl DivAssignMod for u64
source§fn div_assign_mod(&mut self, other: u64) -> u64
fn div_assign_mod(&mut self, other: u64) -> u64
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq r < y$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0.
§Examples
See here.
type ModOutput = u64
source§impl DivAssignMod for u128
impl DivAssignMod for u128
source§fn div_assign_mod(&mut self, other: u128) -> u128
fn div_assign_mod(&mut self, other: u128) -> u128
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq r < y$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0.
§Examples
See here.
type ModOutput = u128
source§impl DivAssignMod for usize
impl DivAssignMod for usize
source§fn div_assign_mod(&mut self, other: usize) -> usize
fn div_assign_mod(&mut self, other: usize) -> usize
Divides a number by another number in place, returning the remainder. The quotient is rounded towards negative infinity.
The quotient and remainder satisfy $x = qy + r$ and $0 \leq r < y$.
$$ f(x, y) = x - y\left \lfloor \frac{x}{y} \right \rfloor, $$ $$ x \gets \left \lfloor \frac{x}{y} \right \rfloor. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if other
is 0.
§Examples
See here.