問題タブ [prolog-toplevel]
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 - プロローグの文を分割して検索する
次のように作成されたリスト L があります。
ここで、メンバー関数を使用して L 内のアトムを検索します。私は試した :
ここで私が間違っているのは何ですか?
prolog - データベースへのクエリの成功と失敗
だから私は取り組んできたエクササイズに行き詰まっています。私は次の事実を持っています:
これが意味することは、appleseed1 が appleseed0 から来た、apple1 が appleseed0 から来たなどということです。私が抱えている問題は、値が入れ替わった場合に false を出力する必要があることです。つまり、クエリの結果が「true」の場合は「true」になり、クエリseed(appleseed0, apple1)
が逆の順序の場合は「false」になりますseed(apple1, appleseed0).
現在、私の述語は次のようになっています。
これが、順序に関係なくクエリが true を返す理由であることを理解していますが、他の唯一のアイデアは次のとおりです。
しかし、そのように書くと、false のない無限ループになってしまうため、そのように書くことはできません。seed(appleseed2, apple2)
のようなもので表示されたときにクエリが「true」になり、のようなもので表示されたときに「false」になるようにするにはどうすればよいseed(apple2, appleseed2)
ですか?
prolog - swi-prolog クエリから 1 つの出力のみを取得するにはどうすればよいですか?
SWI-Prolog クエリから出力を 1 つだけ取得するにはどうすればよいですか? カット ( !
) を使用してみましたが、うまくいかないようです。
例:私はすでに自分の知識ベースをステートメントで満たしていて、女性であり、誰かの母親である名前を見つけたいと思っていました。
私はすでに試しました:
...しかし、それは私にすべてを与えX-__
ますY-__
私も試しました:
...しかし、それでもX-__
との両方が得られますY__
を見つけたいだけですX
。どうにかして1つだけ入手するためのヒントはありますか?
prolog - Prolog は true または false を「返さない」
少し問題が発生しました。必要な値を「返す」Prologクエリを取得しましたが、2番目の値としてtrueまたはfalseを返したいです。私の他のクエリはすべて正常に機能しますが、これは機能しません。
それは私が得るものです:
それだけが必要:
あなたが私を助けてくれることを願っています。ありがとう!
編集:
プロローグ コード: ナレッジ ベース内のすべての機能構造レコード (プロローグ [属性:値、属性:値、...] でリストとして表される) を検索し、OldEvent または OldEvent よりも大きい最小のレコードを「返します」それより小さい値がない場合。
OldEvent がない場合 (OldEvent の値は「unknown」)、最新のフィーチャ構造レコードを取得します。
どちらにも満足できません。通常の文字列かリストかOldEvent = "unknown"
を確認するにはどうすればよいですか?OldEvent
prolog - 一部のプロローグ述語は自動的に「終了」するのに、Enter キーを押す必要があるのはなぜですか。また?
私は SWI-Prolog を使用しており、私が書いたいくつかの述語を実行しようとすると、答えの最後に自動的にピリオドが置かれ、次の行にまっすぐ進みます。Enterキーを押すか、自分でフルストップを置く必要がある人もいます。どうしてこれなの?
これは、Enter キーを押すか「.」を「手動で」押す必要がある例です。最後に、';' を押しても false を返します。しかし、なぜ false を返すのかわかりません。