問題タブ [prolog-dif]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
prolog - 要素がリストに属しているかどうかを示す Prolog 述語を実装します。数値リストではない問題
私は大学の試験のために Prolog を勉強していますが、この演習には問題があります。
要素がリストに属していない
not_member(X,L)
場合に TRUEになる述語を実装します。X
L
私の推論が正しければ、解決策を見つけました。
次のクエリが示すように、このコードは数値のリストでうまく機能します。
ただし、数値以外の要素を含むリストでは機能せず、エラーが報告されます。
なんで?
prolog - X\=Y と dif(X,Y) の違い
これの違いは何ですか:
そして、このコード:
同じように振る舞うべきだと思いましたが、そうではありません。次に例を示します。
そして、ここにいくつかの呼び出しがあります:
X は、リスト L で正確に N 回出現するアトムでなければなりません。 に置き換えるdif(G, X)
とG \= X
、期待した結果が得られません。これら2つの演算子の違いは何ですか? 以外のものを使用できますdif(G, X)
か?
この例は、SWI-Prolog では完全に機能しますが、Amzi では機能しません! プロローグ。
prolog - 各値を一意として返すルールを作成する方法
Learn Prolog Now!をフォローしています。演習 2.4を見ていました。
ここで見つけた解決策は解決しているようですが、完全ではありません。
これにより、次の結果が生成されます。
これらのうち、実用的なのは次の 2 つだけです。
他の 3 つの解決策には重複が含まれているため、問題に対する実行可能な解決策ではありません。
クロスワード ルールに追加して、V1、V2、V3、H1、H2、H3 がすべて一意である結果のみを返すにはどうすればよいですか?
prolog - プロローグ: 不等式演算子
私は SICStus Prolog を使用しており、一連の事実があります。
両方の学生が異なる2人の学生の共有科目を取得したいので、次のようになりました。
ただし、入力すると:
私は得るF = 'John Henry'
。誰かが私が間違っている場所と何をする必要があるかを指摘できますか? ありがとう。
list - プロローグを使用してさらに 2 つのオカレンスを追加します
リストが[a, b, a, a, a, c, c]
あり、各要素をさらに 2 回追加する必要があります。
最終結果は次のようになります。
次のアイテムと同じアイテムがリストにある場合、新しいアイテムが見つかるまで続行し、新しいアイテムが見つかると、前のアイテムの2つの出現を追加してから移動します。
これはこれまでの私のコードですが、2つ追加する方法がわかりません...