私は与えられた数が偶数か奇数である場合、ユーザーに伝えるためにしようとしていますが、動作するように見えるdoen't ...haskell関数が動作していない、誰でも私に教えてくれますか?
typeOfInt :: Int -> String
typeOfInt integerValue
|integerValue `mod` 2 == 0 = "even number"
|otherwise = "odd number"
typeOfInt 27
私は与えられた数が偶数か奇数である場合、ユーザーに伝えるためにしようとしていますが、動作するように見えるdoen't ...haskell関数が動作していない、誰でも私に教えてくれますか?
typeOfInt :: Int -> String
typeOfInt integerValue
|integerValue `mod` 2 == 0 = "even number"
|otherwise = "odd number"
typeOfInt 27
コード自体、それは大丈夫だと動作しますが、あなたがしようとしたように見えますHaskellでどのように関数を使うべきかを正確に評価するのではなく、Pythonの方法で関数を評価することです。ディレクトリ内ghci
を実行してから(コマンド:l <filename>.hs
を使用して)その中にファイルをロードすることで、REPLを使用して
:あなたはここでオプションする必要があります。一度そこに入ると、ファイル内(typeOfInt 27
)や他の関数(map typeOfInt [1, 2, 3, 4, 5]
)のように、関数を対話的に呼び出すことができます。
メインメソッドの作成とファイルのコンパイル。 Haskellのmainメソッドはmain :: IO()
メソッドでなければならず、コンパイルされたファイルを実行すると実行されます。ご例えば
、あなたが探しているように見える結果を得るためにputStrLn
を使用することができます:あなたが見ることができるように
main :: IO()
main = putStrLn $ typeOfInt 27
を、この場合にはそれが使用することを間違いなくより有用ですghci
とコンパイルする代わりに関数で遊ぶ。
ありがとう、非常に役立ちます! – Will
どのように機能しないのですか? – gobrewers14
推測:テスト 'typeOfInt 27'は.hsファイルの中に書くべきではありませんが、GHCiの中で評価される式です。 – chi
ありがとうございました!!!今私は知っている。 – Will