产品在Prolog

时间:2018-04-28 16:09:59

标签: prolog

在Prolog中给出递归定义:

定义一个谓词prod(L,N),它取一个数字列表L. 并计算列表中数字的乘积N.

我找到了适用于总和的方法:

  sum([],0).

 sum([X|L],N) :- sum(L,N1),N is N1 + X.

请帮帮我。我已经尝试了很长时间但仍然无法正常工作。

1 个答案:

答案 0 :(得分:1)

product(L, N) :- product(L, 1, N).
product([], X, N) :- N is X.
product([H|T], X, N) :- X1 is X*H, product(T, X1, N).

您需要一个临时柜台(X就是这种情况)。你把总和误认为乘法。