0

定義済みのリストを作成したい。しかし、引数として渡すと機能しないため、何か間違ったことをしています。ここに私が持っているコードがあります:

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.
4

1 に答える 1

2

述語間で情報をやり取りするには、変数を使用する必要があります。述語listは値を「返す」のではなく、変数をインスタンス化します。

test :- list(L), print(L).
于 2013-05-18T22:19:39.510 に答える