我正在做基础人工智能作业,问题是,“制作一个Prolog程序,该程序可以读取2个数值列表, 串联起来”,所以我是一个菜鸟,我也不知道如何从Prolog中获取输入并将其逐个列出
%I have only make the while func so that you
%put the total numbers you want on the list
p_while(0) :- !.
p_while(N) :-
N > 0,
N1 is N - 1,
read(Num),
p_while(N1).
答案 0 :(得分:1)
有一个称为append/3
的标准谓词。您可以使用它从提示符处读取两个数值列表,并将它们连接起来,如下所示:
?- append([1,2], [3,4], L).
L = [1, 2, 3, 4].
您可以使用listing/1
来查看append/3
的定义:
?- listing(append/3).
lists:append([], L, L).
lists:append([H|T], L, [H|R]) :-
append(T, L, R).
true.