@santi100a/collatz-conjecture
TypeScript icon, indicating that this package has built-in type declarations

0.0.1 • Public • Published

Library Name

Build Status npm homepage GitHub stars License Bundlephobia stats

  • 🚀 Lightweight and fast
  • 👴 ES3-compliant
  • 💻 Portable between the browser and Node.js

What's this?

This is a library that generates the Collatz sequence for any positive integer. Let $ n_0 $ be the initial number, a non-zero positive integer. The conjecture claims that the sequence

$$ n_k = \begin{cases} \frac 1 2 \cdot n_{k-1} & n_{k-1} \in {2, 4, 6, 8, \dots} \ 3\cdot n_{k-1} + 1 & n_{k-1} \in {1, 3, 5, 7, \dots} \end{cases} $$

converges eventually to the infinite loop $ {4, 2, 1, 4, 2, 1, \dots} $ for all natural numbers (integers strictly greater than zero). As of this writing (April 2024), this behavior hasn't been proven or disproven.

Installation

  • Via NPM: npm install @santi100a/collatz-conjecture
  • Via Yarn: yarn add @santi100a/collatz-conjecture
  • Via PNPM: pnpm install @santi100a/collatz-conjecture

API

  • function collatzSequence(n: number): number[]; Calculates the Collatz sequence for a given number.

    Name Type Description Optional? Default
    n number The number to calculate the Collatz sequence for. No N/A

Usage

// Import the collatzSequence function
const collatzSequence = require('@santi100a/collatz-conjecture');

// Example usage
const input = 5;
console.log(`Collatz sequence for input ${input}:`);
const sequence = collatzSequence(input);
console.log(sequence);

Contribute

Wanna contribute? File an issue or pull request! Look at the contribution instructions and make sure you follow the contribution Code of Conduct.

Package Sidebar

Install

npm i @santi100a/collatz-conjecture

Weekly Downloads

62

Version

0.0.1

License

MIT

Unpacked Size

32.7 kB

Total Files

38

Last publish

Collaborators

  • santi100a