を当てはめる番号のリストを生成する:意味でプロローグ - 私のような述語を使用したいのですが与えられた範囲
range(X,0,5)
range(X,4,200)
range(X,-1000000,1000000)
dom_range(X,-1000000,1000000)
を:
(にソリューションのパフォーマンスを取ってきれいにプロローグでそれをコーディングする方法range(X,0,5) :- member(X,[0,1,2,3,4,5]).
range(X,4,200) :- member(X,[4,5,6...198,199,200]).
range(X,-1000000,1000000) :- member(X,[-1000000,...,1000000]).
dom_range(X,-1000000,1000000) :- domain(X, [-1000000,...,1000000]).
アカウント - 再帰の深さなど)?
解決策はGNU-Prolog上で実行される予定です。
P.S.質問はthis questionに触発されました。
'domain()'にも当てはまりますか? –
ドメインとは何ですか?私は上記のシナリオでdom_rangeが何を期待するかは分からなかった。これは引数を範囲に渡すための単なる別の方法ですか? dom_range(Out、[Low、High]): - 範囲(Out、Low、High)です。 – DaveEdelstein
[このチュートリアル](http://wazniak.mimuw.edu.pl/index.php?title=Sztuczna_inteligencja/SI_Modu%C5%82_3_-_Wnioskowanie_w_PROLOG-u)で「ドメイン」について読んだことがありますが、詳細についてわからない、私はプロローグの初心者です。 [fd_domain(+ fd_variable_list_or_fd_variable、+ integer、+ integer)]として指定された[fd_domain/3](http://www.gprolog.org/manual/gprolog.html#htoc321)のGnu-Prologマニュアルを確認しながら、 ](http://www.gprolog.org/manual/gprolog.html#htoc321) - どう思いますか?それは別の解決策かもしれませんか? –