0

これは、現時点では解決できない別のプロローグ タスクです。述語 p(X,Y) を作成する必要があります。ここで、X は数値のリストのリストであり、Y は数値のリストです。述語は以下を検証する必要があります。

1) X を Y の 2 つの要素の連結として表すことができる場合。 2) X の要素数が奇数である。3) X のすべての要素の合計は、Y の最後の要素です。

たぶん、別のタスクとして2、3は簡単に書くことができます。問題は 1)

前もって感謝します。こんなに簡単なタスクを投稿して申し訳ありませんが、プロローグは本当に私を夢中にさせます。私はすべての選択を何度も何度も読みました。しかし、状況は次のようになります: 学校: 3+x=5, x = ? 試験: cos(x+y+z) + lim (5x+y)/t = .... 私の言いたいことがわかっているなら。もう一度ありがとう!

4

1 に答える 1

2

連結のチェックはappend/3、で行われます。これは、連結を構築するためによく使用されますが、多くのProlog述語と同様に、「反対方向」でも機能します。より具体的には、との連結であるappend(A,B,C)かどうかをチェックします。それで、CAB

member(A, Y),
member(B, Y),
append(A, B, X)

Aに要素があり、その連結が。と統合されるようなY要素があるかどうかをチェックします。BYX

(Note that this does not check whether A and B are distinct elements of Y.)

于 2012-08-27T14:15:59.260 に答える