2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
|
|
@ -1 +1,27 @@
|
|||
var factorial = n => (n < 2) ? 1 : n * factorial(n - 1);
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
// factorial :: Int -> Int
|
||||
function factorial(x) {
|
||||
|
||||
return range(1, x)
|
||||
.reduce(function (a, b) {
|
||||
return a * b;
|
||||
}, 1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// range :: Int -> Int -> [Int]
|
||||
function range(m, n) {
|
||||
var a = Array(n - m + 1),
|
||||
i = n + 1;
|
||||
|
||||
while (i-- > m) a[i - m] = i;
|
||||
return a;
|
||||
}
|
||||
|
||||
|
||||
return factorial(18);
|
||||
|
||||
})();
|
||||
|
|
|
|||
1
Task/Factorial/JavaScript/factorial-5.js
Normal file
1
Task/Factorial/JavaScript/factorial-5.js
Normal file
|
|
@ -0,0 +1 @@
|
|||
6402373705728000
|
||||
1
Task/Factorial/JavaScript/factorial-6.js
Normal file
1
Task/Factorial/JavaScript/factorial-6.js
Normal file
|
|
@ -0,0 +1 @@
|
|||
var factorial = n => (n < 2) ? 1 : n * factorial(n - 1);
|
||||
20
Task/Factorial/JavaScript/factorial-7.js
Normal file
20
Task/Factorial/JavaScript/factorial-7.js
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
(function (n) {
|
||||
'use strict';
|
||||
|
||||
// factorial :: Int -> Int
|
||||
let factorial = (n) => range(1, n).reduce(product, 1);
|
||||
|
||||
|
||||
// product :: Num -> Num -> Num
|
||||
let product = (a, b) => a * b,
|
||||
|
||||
// range :: Int -> Int -> [Int]
|
||||
range = (m, n) =>
|
||||
Array.from({
|
||||
length: (n - m) + 1
|
||||
}, (_, i) => m + i)
|
||||
|
||||
|
||||
return factorial(n);
|
||||
|
||||
})(18);
|
||||
Loading…
Add table
Add a link
Reference in a new issue