對於我的程序,我需要列出一個列表,每個子列表包含2個數字,X和Y以及這兩個數字的總和和乘積。 到目前爲止,我有以下幾點: genList(95, X,[]):-!.
genList(N, X,[[X,Y,Sum,Product]|Xs]):-
Y is N+1,
Sum is X+Y,
Sum<101,
Product is X*Y,
N1 is
我有一個使用約束條件在Sicstus Prolog中編寫的程序。 我的目標是使用標籤/ 2和其他方法來獲得我的變量的隨機實例化。 例子: X #> 2, Y #= 2*X, Z #<10
如果我使用 List = [X,Y,Z],
labeling([], List)
獲得將是第一個結果X = Y = Z = 0。你怎麼認爲是返回一組隨機的最佳方式的X,Y和Z值?
我想使用此代碼生成多個排列的: :- use_module(library(clpfd)).
p(N, Indexes) :-
M in 1..N,
M #=< N,
length(Indexes, M),
Indexes ins 1..N.
它返回我所有的成績,但最終崩潰與ERROR: Out of global stack