macfja/math

A set of tools around Mathematics.

Maintainers

Details

github.com/MacFJA/Math

Source

Issues

Installs: 8

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 2

Forks: 0

Open Issues: 0

pkg:composer/macfja/math

dev-master 2015-10-03 15:51 UTC

This package is auto-updated.

Last update: 2025-09-17 02:46:58 UTC


README

A set of class and function around Mathematics.

What inside ?

CombinationBuilder

An utility class to create combination. The class also provide a factorial calculation.

Example and Usage

Combination

Get for 3 in 5:

print_r(CombinationBuilder::getCombination(5, 3));

Will output:

Array
(
    [1-2-3] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [1-2-4] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 4
        )

    [1-2-5] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 5
        )

    [1-3-4] => Array
        (
            [0] => 1
            [1] => 3
            [2] => 4
        )

    [1-3-5] => Array
        (
            [0] => 1
            [1] => 3
            [2] => 5
        )

    [1-4-5] => Array
        (
            [0] => 1
            [1] => 4
            [2] => 5
        )

    [2-3-4] => Array
        (
            [0] => 2
            [1] => 3
            [2] => 4
        )

    [2-3-5] => Array
        (
            [0] => 2
            [1] => 3
            [2] => 5
        )

    [2-4-5] => Array
        (
            [0] => 2
            [1] => 4
            [2] => 5
        )

    [3-4-5] => Array
        (
            [0] => 3
            [1] => 4
            [2] => 5
        )

)

Or in a more compact way:

(1, 2, 3)
(1, 2, 4)
(1, 2, 5)
(1, 3, 4)
(1, 3, 5)
(1, 4, 5)
(2, 3, 4)
(2, 3, 5)
(2, 4, 5)
(3, 4, 5)

Combination Count

Get the number of possible combination

print_r(CombinationBuilder::getCombinationCount(5, 3));

Will output:

10

Factorial

Get the factorial of 5 (5!)

print_r(CombinationBuilder::factorial(5));

Will output:

120