2013年11月9日土曜日

開発環境

初めてのコンピュータサイエンス(Jennifer CampbellPaul GriesJason MontojoGreg Wilson(著)長尾 高弘(翻訳))の6章(条件分岐)、6.5(練習問題)、10をHaskellで解いてみる。

その他参考書籍

6.5(練習問題)、10.

コード(BBEdit)

Sample.hs

{-# OPTIONS -Wall -Werror #-}

main :: IO ()
main = mapM_ putStrLn $ map acidity [0.5, 1.5.. 10.5]

acidity :: Double -> String
acidity ph | ph < 3.0 = show ph ++ "は強酸性です。注意して下さい。"
           | ph < 7.0 = show ph ++ "は酸性です。"
           | otherwise = show ph ++ "は酸性ではありません。"

入出力結果(Terminal, runghc)

$ runghc Sample.hs
0.5は強酸性です。注意して下さい。
1.5は強酸性です。注意して下さい。
2.5は強酸性です。注意して下さい。
3.5は酸性です。
4.5は酸性です。
5.5は酸性です。
6.5は酸性です。
7.5は酸性ではありません。
8.5は酸性ではありません。
9.5は酸性ではありません。
10.5は酸性ではありません。
$

{-# OPTIONS -Wall -Werror #-}を記述してるから、細かく型を指定(:: Double)しないと警告がいっぱい出た。慣れるまでは{-# OPTIONS -Wall -Werror #-}の記述を消さずに細かく型を指定していくことに。

0 コメント:

コメントを投稿