2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
24
Task/Perfect-numbers/JavaScript/perfect-numbers-8.js
Normal file
24
Task/Perfect-numbers/JavaScript/perfect-numbers-8.js
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
((nFrom, nTo) => {
|
||||
|
||||
// perfect :: Int -> Bool
|
||||
let perfect = n => {
|
||||
let lows = range(1, Math.floor(Math.sqrt(n)))
|
||||
.filter(x => (n % x) === 0);
|
||||
|
||||
return n > 1 && lows.concat(lows.map(x => n / x))
|
||||
.reduce((a, x) => (a + x), 0) / 2 === n;
|
||||
},
|
||||
|
||||
// range :: Int -> Int -> Maybe Int -> [Int]
|
||||
range = (m, n, step) => {
|
||||
let d = (step || 1) * (n >= m ? 1 : -1);
|
||||
|
||||
return Array.from({
|
||||
length: Math.floor((n - m) / d) + 1
|
||||
}, (_, i) => m + (i * d));
|
||||
};
|
||||
|
||||
return range(nFrom, nTo)
|
||||
.filter(perfect);
|
||||
|
||||
})(1, 10000);
|
||||
1
Task/Perfect-numbers/JavaScript/perfect-numbers-9.js
Normal file
1
Task/Perfect-numbers/JavaScript/perfect-numbers-9.js
Normal file
|
|
@ -0,0 +1 @@
|
|||
[6, 28, 496, 8128]
|
||||
Loading…
Add table
Add a link
Reference in a new issue