如何编写查询以测试以下用ECLiPSe-CLP中的eplex Lib编写的代码

时间:2019-04-14 18:25:52

标签: eclipse-clp

我是ECLiPSe的新手,并且遇到以下问题。 当我编写并编译此简单程序时:

---------------------------------
:- lib(eplex).

main1(Cost, Vars) :-
Vars = [A1, A2, A3, B1, B2, B3, C1, C2, C3, D1, D2, D3],
Vars :: 0.0..inf,            % variables
A1 + A2 + A3 $= 200,            % demand constraints
B1 + B2 + B3 $= 400,
C1 + C2 + C3 $= 300,
D1 + D2 + D3 $= 100,

A1 + B1 + C1 + D1 $=< 500,        % capacity constraints
A2 + B2 + C2 + D2 $=< 300,
A3 + B3 + C3 + D3 $=< 400,

optimize(min(                % solve
10*A1 + 7*A2 + 11*A3 +
8*B1 + 5*B2 + 10*B3 +
5*C1 + 5*C2 +  8*C3 +
9*D1 + 3*D2 +  7*D3), Cost).
------------------------------

我不知道如何测试?还是什么是简单的查询测试?

如果您引导我,我将非常高兴。 在此先感谢

1 个答案:

答案 0 :(得分:0)

main1 的两个参数都是输出,因此您可以在查询中仅提供两个变量(大写名称),例如 main1(C,Vs) < / strong>。在查询提示中键入此内容(如果使用的是tkeclipse,则在查询输入框中输入内容),然后系统将运行代码并打印答案绑定:

[eclipse 1]: main1(C, Vs).
C = 6600.0
Vs = [100.0, 0.0, 100.0, 100.0, 300.0, 0.0, 300.0, 0.0, 0.0, 0.0, 0.0, 100.0]
Yes (0.00s cpu)