SWI序言给出列表列表中的所有变量的特定值

问题描述 投票:1回答:1

我有一个像这样的清单:[[X,Y],[X],[Y],[X,Y,Z]]

现在,我要为X的每个自由变量赋予值“ true”。喜欢:

?- assign_val(X,[[X,Y],[X],[Y],[X,Y,Z]], true, R).
R = [[true,Y],[true],[Y],[true,Y,Z]]

如何存档?

prolog
1个回答
2
投票

这些不是不同的变量,只有one个变量X多次出现。

因此,您可以简单地将true分配给X。表达式中的此项无关紧要。您可以将其实现为:

assign_val(X, R, X, R).

但是如您所见,此处R不是必需的。

© www.soinside.com 2019 - 2024. All rights reserved.