問題タブ [prolog-findall]
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.
list - Prolog でオブジェクトのリストを取得する方法
次の問題を解決するのが難しいと感じたとき、いくつかのプロローグ演習を解決していました: オブジェクトに関するこの事実ベースがあると考えてください:
ここでのアイデアは、述語 object_description(List) を作成することです。List は、各オブジェクトとその特性を結合したもので、次のようになります。
bagof と findall を使用してみましたが、正しい答えが見つかりませんでした。
事前にThx
prolog - Prolog findall 存在量指定子
Prolog で問題が発生しました。これが私が使用するコードの一部です。
これは、リストの 2 つのリストを入力として取得し、同じ要素を持つリストが含まれているかどうかを判断します。たとえば[[1,2],[3,4]]
、 と同じ要素があり[[2,1],[4,3]]
ます。これはうまくいきます。
今私のfindall:
知っておくべき重要なことは、verdeling2/3 は (前述のように) リストの異なるリストを返す節であり、[1,2,3,4,...] の順列から構築されるということです。 verdeling2 のいくつかの異なる出力/3 (入力としての順列による) は次のとおりです。
ここで、同じ要素を含まないすべてのリストの概要を表示できるものが必要です (has_same_elements を使用)。findall を使用すればうまくいくはずだと思いましたが、不要なパケットをフィルタリングするのではなく、完全なパケットを返します。
list - リストを論理的に処理する
私のプログラムには多くの事実があり、会社の開発者やデザイナー、および以前のプロジェクトなどがリストされています。
また、プロジェクトに取り組んでいるデザイナーまたは開発者のリストを表示する定義を作成しました
私が欲しいのは、デザイナーまたは開発者のリストを取り、両方が取り組んだすべてのプロジェクトタイトルのリストを表示する新しい定義を作成することです(P)。そのようです..
一人の映画を探す必要がある場合は、findall(またはbagof)を使用して簡単にこれを行うことができますが、従業員のリストを使用してこれをどのように行うかはわかりません。誰かが私にこれを手伝ってくれる?
prolog - findall/3 の正しい使い方、特に最初のテンプレート引数
プロローグに組み込み関数 findall/3 があることを知っており、総時間数(Thrs)を見つけてリストに保存し、リストを合計しようとしています。しかし、それは私にはうまくいきません。ここに私のコードがあります:
何が悪いのか教えていただけますか?どうもありがとう。
prolog - 述語のすべての解決策を見つける
自由変数を含む単一の項を受け取り、それらの変数のマッピングのリストを返す述語を定義しようとしています。たとえば、データベースが
期待される出力は
私はを使用してこれを達成しようとしていfindall/3
ますが、自由変数とその可能な値を求める方法がわかりません。それが役に立ったら、私はswiprologを使用しています。ありがとう。
database - Prolog-同じ機能ですが、findallはありません
「findall」なしで、これが行うことを実行する述語を実装する方法を誰かが知っていますか?大いに感謝する。
prolog - findall/3メタ述語の使用方法と内部
私はこれを書きたいです:
たった一行で。つまり、基本的には次のようなものです。
ゴールステートメントで「AND」を表現する方法がわかりません。これは可能ですか?
prolog - Prolog のエラー (SICStus) findall
プロローグプログラムに問題があります。エラーは、述語移動内の述語 findall にあります。なぜこのエラーが発生したのか誰でも知っています:
! >= /2 の引数 1 でインスタンス化エラーが発生しました! 目標: _1123>=0 % 1
コードは次のとおりです。
tree - findallなしでリストを印刷する
与えられたレベルNのツリーのすべてのノードのリスト(リストである必要があります)を出力するプログラムをプロローグで実行する必要があります。ノードをリストに入れることができません。誰かが関数findallを使用するように私に言いましたが、それでも機能しません。述語levelNodesを変更したくないのですが、findallを使用しないソリューションが適しています。
prolog - プロローグですべての統合を見つける
PROLOG で最初の簡単なコードを書きました。
is_beginning の最初の引数が 2 番目の引数と等しいかどうかを調べるように設計されています。まあ、私見は質問にかなりうまく答えることができますが、定義された2番目の引数に対して可能なすべての答えを得る可能性があるかどうか疑問に思っています。例えば。為に
[]、[a]、[a、b]、[a、b、c]を回答の統合として取得したいのですが、[]しか取得できません(最も簡単な回答)。
私が欲しいものを手に入れる可能性はありますか?多分私の定義に何か問題がありますか?私はすでにfindallとforallを使用しようとしましたが、うまくいきません:(
すべての回答に感謝します。