-1

ホイールとキャリッジ全体の数がある場合、何台の車pとオートバイが入っているかを計算する Haskell モジュールを作成したいと考えています。mrn

私は機能を持っています:

p = (r - 2p) / n
m = n - ((r-2) / 2))
n = p + m
r = 4p + 2m

しかし、これを Haskell 関数として定義するにはどうすればよいでしょうか? はじまりです

calculator :: Int -> Int -> Int -> Int
calculator r n = ...

定義する関数pmnを正しく構成するにはどうすればよいですか?rcalculator

4

1 に答える 1

3

ここでいくつかの問題に遭遇します。いくつかの場所で乗算演算子を省略しました ( である必要はあり2 * pません2p)。すべての変数は関数ではなく、相互に定義された値であり、calculator関数を開始する必要があります。小文字で、整数divの代わりに使用する必要があります (は型に対して定義されていません)。次のようなものが必要な場合があります。//Int

numCars :: Int -> Int -> Int
numCars wheels carriages = undefined {- formula for calculating number of cars -}

numBikes :: Int -> Int -> Int
numBikes wheels carriages = undefined {- formula for calculating number of motorcycles -}

calculator :: Int -> Int -> (Int, Int)
calculator wheels carriages = (numCars wheels carriages, numBikes wheels carriages)

main :: IO ()
main = do
    putStr "Enter the number of wheels:  "
    wStr <- getLine
    putStr "Enter the number of carriages:  "
    cStr <- getLine
    let (cars, bikes) = calculator (read wStr :: Int) (read cStr :: Int)
    putStr "The number of cars is:  "
    print cars
    putStr "The number of bikes is:  "
    print bikes
于 2013-11-05T14:49:36.753 に答える