Sha256: 3b197f0ccc6487261dd07c877a260007df9d189766467186fc6817427ce5d1a3
Contents?: true
Size: 420 Bytes
Versions: 131
Compression:
Stored size: 420 Bytes
Contents
module CollatzConjecture ( collatz ) where import Prelude import Data.Int (even) import Data.Maybe (Maybe(..)) collatzHelper :: Int -> Int -> Int collatzHelper acc x | x == 1 = acc | even x = collatzHelper (acc + 1) (x / 2) | otherwise = collatzHelper (acc + 1) (x * 3 + 1) collatz :: Int -> Maybe Int collatz x = if x <= 0 then Nothing else Just $ collatzHelper 0 x
Version data entries
131 entries across 131 versions & 1 rubygems