これは私の宿題の小さな部分です。リストの要素を数えなければならず、数== 2ならtrueを返します。そのリストの要素は固定されていませんが、異なる機能などのを使用してフィルタリングされます(例:allNumbers)。私はこの既存の関数を使って2つの要素があるかどうかを調べなければなりません。リストの要素をカウントする(haskell)
チェック機能の定義は次のようになります。
isTrue :: Int -> Bool
私は、現在の機能は、これがないことのリストのn分割のすべての数字である
divisors :: Int -> [Int]
divisors n | n < 1 = []
| otherwise = filter (\k -> n `mod` k == 0) [1..n]
を定義しています。今私は別の関数を作成する必要があります上記の関数によって生成されるリストに2つだけの数字がある場合、trueとなる同じプログラムでTrueです。
'divisors'によって生成されるリストは、' Int'のリストと言われるので、数字だけを含むことができます。あなたは「[...]は* 2 *数字しか持っていませんか?あなたの返信に感謝します。 – phimuemue
はい、リストはIntのリストです、私は意味しています。除数は、除数によって生成されたリストに2つの要素しか含まれていない場合、真を返す別の関数です。だから私はそれがn> 1の条件になると推測していますが、今ここでそれを実装する方法は確かです。 – Amjad