首页 > 解决方案 > SWI-Prolog 列表结果

问题描述

我在序言中编码,但我有一个问题。我怎样才能让答案只出现一次?例如,我只想要“X = uni,X = uca,X = unam”,但它只是不断地向我展示选项。

这是其中的一部分:

is(uni, college).
is(uca, college).
is(unan, college).

is(computation, carrer).

在这部分中,我将可用的位置分配给 carrer

has(computation, available_places, 200).

最后将carrer分配到一所大学

offers(unan, computation).
offers(uni, computation).
offers(uca, computation).

我这样查询:

which(X):- is(X, college), is(Y, carrer), offers(X, Y),has(Y, available_places, Z), Z<300.

但是结果正如我在开始时所说的那样,反复给我看大学的名字。知道如何解决这个问题吗?丁:

标签: prolog

解决方案


推荐阅读