Trait malachite_base::num::arithmetic::traits::CeilingDivMod

source ·
pub trait CeilingDivMod<RHS = Self> {
    type DivOutput;
    type ModOutput;

    // Required method
    fn ceiling_div_mod(self, other: RHS) -> (Self::DivOutput, Self::ModOutput);
}
Expand description

Divides a number by another number, returning the quotient and remainder. The quotient is rounded towards positive infinity and the remainder has the opposite sign as the divisor (second input).

The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.

Required Associated Types§

Required Methods§

source

fn ceiling_div_mod(self, other: RHS) -> (Self::DivOutput, Self::ModOutput)

Implementations on Foreign Types§

source§

impl CeilingDivMod for i8

source§

fn ceiling_div_mod(self, other: i8) -> (i8, i8)

Divides a number by another number, returning the quotient and remainder. The quotient is rounded towards positive infinity and the remainder has the opposite sign as the second number.

The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.

$$ f(x, y) = \left ( \left \lceil \frac{x}{y} \right \rceil, \space x - y\left \lceil \frac{x}{y} \right \rceil \right ). $$

§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.

source§

type DivOutput = i8

source§

type ModOutput = i8

source§

impl CeilingDivMod for i16

source§

fn ceiling_div_mod(self, other: i16) -> (i16, i16)

Divides a number by another number, returning the quotient and remainder. The quotient is rounded towards positive infinity and the remainder has the opposite sign as the second number.

The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.

$$ f(x, y) = \left ( \left \lceil \frac{x}{y} \right \rceil, \space x - y\left \lceil \frac{x}{y} \right \rceil \right ). $$

§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.

source§

type DivOutput = i16

source§

type ModOutput = i16

source§

impl CeilingDivMod for i32

source§

fn ceiling_div_mod(self, other: i32) -> (i32, i32)

Divides a number by another number, returning the quotient and remainder. The quotient is rounded towards positive infinity and the remainder has the opposite sign as the second number.

The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.

$$ f(x, y) = \left ( \left \lceil \frac{x}{y} \right \rceil, \space x - y\left \lceil \frac{x}{y} \right \rceil \right ). $$

§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.

source§

type DivOutput = i32

source§

type ModOutput = i32

source§

impl CeilingDivMod for i64

source§

fn ceiling_div_mod(self, other: i64) -> (i64, i64)

Divides a number by another number, returning the quotient and remainder. The quotient is rounded towards positive infinity and the remainder has the opposite sign as the second number.

The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.

$$ f(x, y) = \left ( \left \lceil \frac{x}{y} \right \rceil, \space x - y\left \lceil \frac{x}{y} \right \rceil \right ). $$

§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.

source§

type DivOutput = i64

source§

type ModOutput = i64

source§

impl CeilingDivMod for i128

source§

fn ceiling_div_mod(self, other: i128) -> (i128, i128)

Divides a number by another number, returning the quotient and remainder. The quotient is rounded towards positive infinity and the remainder has the opposite sign as the second number.

The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.

$$ f(x, y) = \left ( \left \lceil \frac{x}{y} \right \rceil, \space x - y\left \lceil \frac{x}{y} \right \rceil \right ). $$

§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.

source§

type DivOutput = i128

source§

type ModOutput = i128

source§

impl CeilingDivMod for isize

source§

fn ceiling_div_mod(self, other: isize) -> (isize, isize)

Divides a number by another number, returning the quotient and remainder. The quotient is rounded towards positive infinity and the remainder has the opposite sign as the second number.

The quotient and remainder satisfy $x = qy + r$ and $0 \leq |r| < |y|$.

$$ f(x, y) = \left ( \left \lceil \frac{x}{y} \right \rceil, \space x - y\left \lceil \frac{x}{y} \right \rceil \right ). $$

§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.

source§

type DivOutput = isize

source§

type ModOutput = isize

Implementors§