Mercurial > hg > toys
changeset 10:39725b492f1e
Add haskell
author | Jordi Gutiérrez Hermoso <jordigh@octave.org> |
---|---|
date | Tue, 01 Oct 2013 21:39:48 -0400 |
parents | |
children | d5ba6cf70633 |
files | haskell/primes.hs |
diffstat | 1 files changed, 11 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/haskell/primes.hs @@ -0,0 +1,11 @@ +isPrime :: Integer -> Bool +isPrime n = all (\p -> n `mod` p /= 0) (takeWhile (\p -> p^2 <= n) primes) + +primes :: [Integer] +primes = 2 : filter isPrime [3,5..] + +hailstone :: Integer -> [Integer] +hailstone 1 = [1] +hailstone n = if n `mod` 2 == 0 + then n:hailstone (n `div` 2) + else n:hailstone (3*n+1) \ No newline at end of file