September Morn Update
This commit is contained in:
parent
4e2d22a71d
commit
aac6731f2c
6856 changed files with 141342 additions and 21127 deletions
|
|
@ -1,10 +1,18 @@
|
|||
import Data.Ratio
|
||||
import Data.Ratio ((%))
|
||||
|
||||
-- simply prints all the perfect numbers
|
||||
main = mapM_ print [candidate
|
||||
| candidate <- [2 .. 2^19],
|
||||
getSum candidate == 1]
|
||||
where getSum candidate = 1 % candidate +
|
||||
sum [1 % factor + 1 % (candidate `div` factor)
|
||||
| factor <- [2 .. floor(sqrt(fromIntegral(candidate)))],
|
||||
candidate `mod` factor == 0]
|
||||
-- Prints the first N perfect numbers.
|
||||
main = do
|
||||
let n = 4
|
||||
mapM_ print $
|
||||
take
|
||||
n
|
||||
[ candidate
|
||||
| candidate <- [2 .. 2 ^ 19]
|
||||
, getSum candidate == 1 ]
|
||||
where
|
||||
getSum candidate =
|
||||
1 % candidate +
|
||||
sum
|
||||
[ 1 % factor + 1 % (candidate `div` factor)
|
||||
| factor <- [2 .. floor (sqrt (fromIntegral candidate))]
|
||||
, candidate `mod` factor == 0 ]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue