simple-squiggle/node_modules/mathjs/lib/esm/utils/product.js

17 lines
314 B
JavaScript
Raw Permalink Normal View History

/** @param {number} i
* @param {number} n
* @returns {number} product of i to n
*/
export function product(i, n) {
if (n < i) {
return 1;
}
if (n === i) {
return n;
}
var half = n + i >> 1; // divide (n + i) by 2 and truncate to integer
return product(i, half) * product(half + 1, n);
}