2011年08月10日(水)
リスト内包表記 - ガード
独習 | |
ガードの例
factors :: Int -> [Int] factors n = [x | x <- [1..n], n `mod` x == 0] -- 約数を求める
primes :: Int -> [Int] primes n = [x| x <- [2..n], prime x] -- 素数を全て求める
find :: Eq a => a -> [(a,b)] -> [b] find k t = [v| (l,v) <- t, k == l] -- 組のリストからキーを指定して検索 > find 'b' [('a',1),('b',2),('c',3),('b',4)] [2,4]
コメント