Sha256: 5c4ccb6ef0450e55e58180c988747bcdd6ae7a151030c2edfdb30d490f33b59d

Contents?: true

Size: 399 Bytes

Versions: 120

Compression:

Stored size: 399 Bytes

Contents

module PerfectNumbers (classify, Classification(..)) where

data Classification = Deficient | Perfect | Abundant deriving (Eq, Show)

classify :: Int -> Maybe Classification
classify n | n < 1        = Nothing
           | n < divisors = Just Abundant
           | n > divisors = Just Deficient
           | otherwise    = Just Perfect
  where divisors = sum $ filter ((0==) . mod n) [1..(div n 2)]

Version data entries

120 entries across 120 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.179 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.178 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.177 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.176 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.175 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.174 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.173 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.172 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.171 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.170 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.169 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.167 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.166 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.165 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.164 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.163 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.162 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.161 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs
trackler-2.2.1.160 tracks/haskell/exercises/perfect-numbers/examples/success-standard/src/PerfectNumbers.hs