@yetnt/ump
Version:
A very useless math package for your complex javascript projects
37 lines • 867 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.primeFactorize = void 0;
const nextPrime = (n) => {
let prime = n + 1;
while (!isPrime(prime)) {
prime++;
}
return prime;
};
const isPrime = (n) => {
for (let i = 2; i <= Math.sqrt(n); i++) {
if (n % i === 0) {
return false;
}
}
return true;
};
/**
* Calculates the prime factorization of a number.
*
* @param num - The number to be factorized.
*/
function primeFactorize(num) {
const primeFactors = [];
let prime = 2;
while (num > 1) {
while (num % prime === 0) {
primeFactors.push(prime);
num = num / prime;
}
prime = nextPrime(prime);
}
return primeFactors;
}
exports.primeFactorize = primeFactorize;
//# sourceMappingURL=PrimeFactorize.js.map