【问题标题】:Prolog List instantiationProlog 列表实例化
【发布时间】:2013-05-18 22:00:49
【问题描述】:

我想创建一个预定义列表。但是我做错了,因为当我将它作为参数传递时它不起作用。 这是我的代码:

list([5, 1, 2, 8, 10, 4, 3, 6, 9, 7]).

print( [ ] ).
print( [ X | Y ] ):- write(X), write(' '), print( Y ).

test:- print(list).

控制台输出:

1 ?- a.
true .

它不起作用。但这是我自己通过列表的时候:

2 ?- print([5, 1, 2, 8, 10, 4, 3, 6, 9, 7]).
5 1 2 8 10 4 3 6 9 7 
true.

【问题讨论】:

    标签: list prolog


    【解决方案1】:

    您应该使用变量在谓词之间传递信息。您的 list 谓词不会“返回”值,它会实例化一个变量。

    test :- list(L), print(L).
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-07
      • 1970-01-01
      相关资源
      最近更新 更多