当它应该返回列表列表时,Prolog返回Out = _G431

时间:2010-05-02 06:42:03

标签: prolog return

createSchedule([[math109]], fall, Out).
[[cs485, cs485], [cs355, cs355, cs462, cs462, cs462], [cs345, cs345, cs352, cs352, cs352, cs362, cs362, cs362, cs396, cs396, cs396], [cs330, cs330, cs330], [cs255, cs255, cs255, cs268, cs268], [math114, cs245, cs245], [math112, cs145, cs146], [math109]]

Out = _G431

这是prolog返回的内容,列表列表通过在prolog中使用write(Out)来显示。

为什么会出现这种情况? 感谢

1 个答案:

答案 0 :(得分:1)

似乎目标Out中的变量createSchedule([[math109]], fall, Out)可能没有统一到目标执行中的任何内容(或者,它仅与变量统一)。

我建议您检查createSchedule/3中的最后一个变量(即Out)应该绑定在代码中的哪个位置,如果这没有帮助,您可以执行?- trace, createSchedule([[math109]], fall, Out).和逐步执行代码,看看它无法按预期运行。

如果没有更多信息(例如谓词定义),我们无法再为您提供帮助。