【发布时间】:2013-10-07 17:02:16
【问题描述】:
我是 Prolog 编程的初学者。 我编写了这个程序来计算列表的长度。为什么下面的程序出错了?
length(0, []).
length(L+l, H|T) :- length(L, T).
我写了下面的程序,它可以正常工作。
length([], 0).
length([H|T], N) :- length(T, N1), N is N1+1.
当我更改订单时,出现错误。为什么?
length([], 0).
length([H|T], N) :- N is N1+1, length(T, N1).
【问题讨论】: