我需要2个程序来创建以下示例输出:
1)
?-length_full([a,[b,c],[d]],R).
R=4
2)
?-mirror([a,[b,c],[d,e]],R).
R=[[e,d],[c,b],a]
我试过但是不能写程序......所以请帮助我!
答案 0 :(得分:-1)
怎么样:
length_full([], 0) :- !.
length_full([X|Y], S) :- !,
length_full(X, A),
length_full(Y, B),
S is A+B.
length_full(_, 1).
mirror([X|Y], Z) :- !,
mirror([X|Y], [], Z).
mirror(X, X).
mirror([], L, L).
mirror([X|Y], L, R) :-
mirror(X, A),
mirror(Y, [A|L], R).