product.js 311 B

1234567891011121314
  1. /** @param {number} i
  2. * @param {number} n
  3. * @returns {number} product of i to n
  4. */
  5. export function product(i, n) {
  6. if (n < i) {
  7. return 1;
  8. }
  9. if (n === i) {
  10. return n;
  11. }
  12. var half = n + i >> 1; // divide (n + i) by 2 and truncate to integer
  13. return product(i, half) * product(half + 1, n);
  14. }