Hatena::Grouphaskell

lnzntのHaskell日記 このページをアンテナに追加 RSSフィード

2011年08月10日(水)

リスト内包表記 - ガード

| 21:20 | リスト内包表記 - ガード - lnzntのHaskell日記 を含むブックマーク はてなブックマーク - リスト内包表記 - ガード - lnzntのHaskell日記 リスト内包表記 - ガード - lnzntのHaskell日記 のブックマークコメント

ガードの例

 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]