Prolog相同表达但结果不同

时间:2016-05-21 11:55:36

标签: prolog clpfd

我编写了以下代码但需要帮助:

kip(A,B) :- A#= 2*B.

?- kip(100,L).

L=50
我用不同的方式写了几乎相同的东西:

kip_v1(A,B) :- A#= (B+1)*(B+1) - B*B -1.
(B+1)*(B+1) - B*B -1的{​​{1}} 2*Bkip相同,但这不会给50

?- kip_v1(100,P).

P+1#=_G12699,
P+1#=_G12711,
P^2#=_G12723, 
_G12699 in inf.. -1\/1..sup,
_G12711*_G12699#=_G12753,
_G12711 in inf.. -1\/1..sup,
_G12753 in 101..sup,
101+_G12723#=_G12753,
_G12723 in 0..sup.

任何人都可以帮我这个代码吗?

0 个答案:

没有答案
相关问题