swi-prolog

    1

    1答えて

    私はfactoraryを計算する簡単なプロローグファイルを持っています。私はfactorial.plファイルを調べ、それをC++を通してfactという名前のモジュールと呼んでいます。 ここは私のサンプルコードですが、正しく動作しません。 #include <iostream> using std::cout; using std::cin; using std::endl; #inclu

    4

    1答えて

    実行時にSWI-Prologで新しい制約を生成するプログラムを作成しようとしています。 is_true([A,means,B])は、実行時に別の制約を生成することを意図している: :- use_module(library(chr)). :- chr_constraint is_true/1. is_true([A,means,B]) ==> (is_true(A) ==> is_true(

    6

    1答えて

    私はPrologクエリの部分評価を書いています。私はexpand_goal/2を使用してクエリを拡張しようとしたが、それは単に、この場合にOutputでInputを統合: :- initialization(main). main :- Input=is_between(1,A,3),expand_goal(Input,Output),writeln(Output). is_betw

    1

    2答えて

    私はPrologでDCGを構築しました。 phrase(programm(R), [1,+,2], []). 私は、ユーザーが入力を書きたいので、私はこれでした::コードは、私は次の呼び出しを行う際に、作品 main :- read(Input), atom_chars(Input, R), write(R), phrase(programm(E), R). メインと入力などの呼び出しを'

    2

    1答えて

    私はPrologを初めて使い、1または-1の値を持つ一連のシンボルを持つ問題を解決しようとしました。私が必要とするのは、一度に1つの要素をすべて一緒に追加し、最初の合計がどのインデックスで0より下に下がるかを抽出することです。私は命令的な背景から来ているので、カウント変数とfor-loopであるが、明らかに私はPrologでそれを行うことはできない。私は本当にこれまで管理してきた value('(

    2

    1答えて

    私はPrologと。(a、[])== [a]を学んでいます。 SWI-Prologでtrueを返すべきですが、エラーが表示されます ERROR: Type error: `dict' expected, found `a' (an atom) ERROR: In: ERROR: [11] throw(error(type_error(dict,a),_4020)) ERROR: [10] '

    1

    1答えて

    私はSWI-Prologをclprライブラリと共に使用して、実数に対する制約を解いています。私はcommand lineからSWI-Prologを呼び出し、別のプログラムで出力を解析することでこれを行います。 swipl \ -g "use_module(library(clpr))" \ -g "{F = 1.8 * C + 32}, {C = 25}, write(\"F

    4

    1答えて

    シリアライズされた浮動小数点数をSWI-Prolog浮動小数点数に変換する方法はありますか?Cに落とされることはありません。 私はバイナリストリーム(OSCプロトコル)を解析しています。私は32ビットIEEE 754浮動小数点を4 'コード'文字のリストとして取得します。今私はこれを通常のSWI-Prologフロートと統一したいと思います。 SWI-Prologで

    4

    1答えて

    swi-prolog Pythonファイルscore.pyを実行して出力を得るにはどうすればよいですか? 私は約process_create/3とexec/1を読んだが、私はあなたがstdout/1とstderr/1オプションprocess_create/3のを使用する必要がある多くのドキュメント

    0

    1答えて

    ファイルの終わりに達したときにwait_for_inputが待機しない理由を理解できません。 Mac OS Xでswi-prolog 7.6.0、Red Hat Linux 6、swi-prolog 5.7.11で試してみました。私は引用符なしで、単一の行 "f(1)。"を含むファイルへのストリームを開きます。 wait_for_inputが返ってくるが、ストリームを読むとend_of_fileを