2006-04-19から1日間の記事一覧

2日目

1.2.6 素数 最小の除数を求める。この通りにやるより、除数のリストを作るほうが簡単かな。 divisers :: Int -> [Int] divisers n = [ x | x <- [2 .. limit], n `mod` x == 0] where limit = floor (sqrt (fromIntegral n)) isPrime :: Int -> Bool isPrime…

遅延評価と末尾再帰

そういうことで、問題1.11 の反復的なものを Haskell で書くときはこの前書いた f n = iter 2 1 0 n where iter a b c count | count == 0 = c | otherwise = iter (a + 2 * b + 3 * c) a b (count - 1)では固定スペースで実行できなくて、こうやらないとい…

The Craft of ... の続き(2)

p303 newtype コンストラクタが一つの時は data じゃなくて newtype と書くと効率的。そんなこと機械が勝手にやればいいのに。 p308 $6,4000 question ミリオネアみたいなクイズ番組らしい -> http://www.museum.tv/archives/etv/S/htmlS/$64000quest/$64000…