Skip to content

Commit 3648eb7

Browse files
authored
Merge pull request vJechsmayr#106 from dhkamp/feature/factorial
Added factorial algorithm
2 parents b596741 + e45b922 commit 3648eb7

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

‎DynamicProgramming/factorial.js‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
function factorial(num = 0) {
2+
if (num < 0)
3+
throw new Error(
4+
"Factorials can only be calculated for non-negative numbers."
5+
);
6+
if (num === 0 || num === 1) return 1;
7+
8+
let value = 1;
9+
10+
for (let i = 0, j = num; i < j; i++) {
11+
value *= i + 1;
12+
}
13+
return value;
14+
}
15+
16+
console.log(factorial(3)); // 3! = 1*2*3 = 6

0 commit comments

Comments
 (0)