Prolog列表中的Evens长度

时间:2015-02-28 23:40:42

标签: list recursion prolog sublist variable-length

我是Prolog的初学者,我有以下长度函数:

mylen([H|Lc],N) :- mylen(Lc,M),N is M+1.
mylen([],0).

我想知道是否有一种简单的方法来查询解释器来计算列表中的平均列表的长度,如果没有,我将如何仅在偶数上递增N.感谢。

1 个答案:

答案 0 :(得分:1)

您可能正在寻找类似于此的内容

mylen([H|Lc],N) :- 
X is mod(H,2),
X == 0,
mylen(Lc,M),
N is M+1.

mylen([],0).

mylen([H|Lc],N) :-
mylen(Lc, M),
N = M.