An open API service indexing awesome lists of open source software.

https://github.com/xotic750/modulo-x

modulo - floored division implementation.
https://github.com/xotic750/modulo-x

floored-division javascript math modulo

Last synced: about 2 months ago
JSON representation

modulo - floored division implementation.

Awesome Lists containing this project

README

          


Travis status


Dependency status


devDependency status


npm version


jsDelivr hits


bettercodehub score


Coverage Status

## modulo-x

modulo - floored division implementation.

### `module.exports(dividend, divisor)` ⇒ number

The notation “x modulo y” (y must be finite and nonzero) computes a value k
of the same sign as y (or zero) such that abs(k) < abs(y) and x-k = q × y
for some integer q.

Donald Knuth described floored division where the quotient is defined by
the floor function q = ⌊a/n⌋ and thus according to equation the remainder
would have the same sign as the divisor. Due to the floor function, the
quotient is always rounded downwards, even if it is already negative.

**Kind**: Exported function
**Returns**: number - The integer remainder.
**See**

- [http://www.ecma-international.org/ecma-262/6.0/#sec-algorithm-conventions](http://www.ecma-international.org/ecma-262/6.0/#sec-algorithm-conventions)
- [https://en.wikipedia.org/wiki/Modulo_operation](https://en.wikipedia.org/wiki/Modulo_operation)

| Param | Type | Description |
| -------- | ------------------- | ------------------------------------- |
| dividend | number | The integer to find the remainder of. |
| divisor | number | The integer to divide by. |

**Example**

```js
import modulo from 'modulo-x';

console.log(modulo(1, 0x1000000)); // 1
console.log(modulo(-1, 0x1000000)); // 16777215 (2^24-1)
```