fracturize

Simple,lightweight and straight-forward library for operation with Fractions

Usage no npm install needed!

<script type="module">
  import fracturize from 'https://cdn.skypack.dev/fracturize';
</script>

README

Fracturize

Fracturize Logo

Installing

    npm install https://github.com/ibrido90/fracturize.git
    npm install fracturize

Test

    npm test

Usage

var Fraction = require('fracturize')

var a = new Fraction(1,2)
console.log(a) //prints 1/2
var b = new Fraction(5,2)
console.log(b) //prints 5/2
var c = new Fraction(b,a)
console.log(c) //prints 5/1
var c = new Fraction(a,b)
console.log(c) //prints 1/5
var one = new Fraction()
console.log(one) //prints 1/1

var wrong = new Fraction(1,0) -> Error

Fraction accept 0,1(just numerator) or 2(numerator,denominator) arguments. This could be at their times Fraction objects or numbers

Note: in constructor you can specify the optional boolean force wich allow you to decide if force fraction semplification:

new Fraction(10,5) // 2/1
new Fraction(10,5,false) // 2/1
new Fraction(10,5,true) // 10/5

Operations

Sum

a.sum(b) // a + b -> 3/1

Subtraction

a.sub(b)) // a - b -> -2/1

Multiply

a.mul(b) // a * b -> 5/4

Division

a.div(b) // a / b -> 1/5

Conversion

You can convert a Fraction object to its relative value by executing it

console.log(a.exec()) // num / den -> prints 0.5

or to its string rappresentation with

a.toString() // -> "1/2"

Utilities

Maximum

Fraction.max(a,b) // MAX(a,b) -> prints 5/2

Minimum

Fraction.min(a,b) // MAX(a,b) -> prints 1/2

isBetween

c.isBetween(a,b)// a < c < b  -> false
one.isBetween(a,b)// a < one < b  -> true