Newton法
Haskellをマスターして悟り体験をしたいというのはあるんだけど、遠い夢より現実的な用途として、アルゴリズムのメモがわりにHaskellは使えないかなと。qsortとかみたいに。実際に動作するメモ。
で、Newton法を適当に書いた。
eps = 1e-7 newton f f' x = if (abs $ f x) < eps then x else newton f f' $ improve f f' x improve f f' x = x - f x / f' x f x = x ** 2 - 2 f' x = 2 * x main = putStrLn $ show $ newton f f' 3
このNewton法だとメモがわりにはなってるがする。
再帰をループに直すところで少し考えそうなのが気がかりだけど。