Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including factorial-ln with all npm packages installed. Try it out:

var factorialLn = require("factorial-ln")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

factorial-ln v1.0.0

compute log(n!) of huge numbers



Build Status

compute log(n!) of huge numbers


var factorialln = require('factorial-ln')
factorialln(171) // would return Infinity with 'factorial' package


npm install factorial-ln


By working with log(n) rather than n, we can deal with huge numbers without loss of precision, overflow, or underflow. No big number library is required, at least until we have reason to switch back into non-log. In many cases, such as where really big and really small numbers are only used internally in certain computations, we can completely avoid the use of a big number library.

Also, multiplication is much faster in log space (you add). The same for division (you divide). This is never a bad thing.

This module exports a single function which simply computes log(n!).




RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free