宿題のサブタスクは、算術関数(+)
、(-)
、(*)
および表示可能にすることdiv
です。
課題の残りは解決しましたが、ここで立ち往生しています。現在、この質問に対する解決策を使用して、操作を区別しています。
showOp op = case op 3 3 of
6 -> "plus"
0 -> "minus"
9 -> "times"
1 -> "divide"
_ -> "undefined"
showOp (\a b -> a * 3 - y)
しかし、これはyieldのようなものと同じくらい醜いと思い"plus"
ます。
演算子をよりよく区別する方法はありますか?
-98 +o
必要な拡張機能を使用できるようにするために、適切なスイッチで winhugs atm を使用しています。
編集:
要求どおり、実際の割り当ては配列 (具体的にはArray Int (Int -> Int -> Int)
) と関係があります。特定の条件を満たす演算子の配列を生成する必要があります。
割り当ては次のように述べています。
データ型
Array Int (Int->Int-Int)
を のインスタンスにしShow
ます。前の演習の算術演算は、「plus」、「minus」、「times」、および「div」で表す必要があります。
事前に助けを求めるthx