練習問題
※このページの筆者はHaskellを今日初めて書きました。
変な処理があれば修正してください。

ループ1

問題文

import Data.IORef

-- Define 'while'
while test action = do
    val <- test
    if val then do { action; while test action }
    else return ()

-- Some helpers for use with 'while'
incr ref = modifyIORef ref (+1)
test ref f = do { val <- readIORef ref; return (f val) }

main = do
    ref <- newIORef 0
    while (test ref (< 5))
          (do { putStrLn "Hello World!"; incr ref })

ループ2


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS