我正在创建一个递归函数,该函数将Mem中的列表返回给我。 完美循环所有内容,然后使用回溯序言返回空列表。 帮助。
Iniz([A1,A2|T], A1, Mem) :-
append([],[], Mem),
cicl([A2|T],A2, Mem).
cicl([],[], Mem) :- !.
cicl([A2],A2, Mem) :-
string_chars(A2,A1_1),
op(A1_1, Operation),!,
append(Mem, [Operation], Lista),
cicl([],[],Lista).
cicl([A1,A2|T],A1, Mem) :-
string_chars(A1,A1_1),
write("no operation"),
nth0(0, A1_1, /),
nth0(1, A1_1, /),
cicl([A2|T],A2, Mem).
cicl([A1,A2|T],A1, Mem) :-
string_chars(A1,A1_1),
nth0(0, A1_1, C), nth0(1, A1_1, C1),
C \= /,
C1 \= /,
op(A1_1, Operation),!,
append(Mem, [Operation], Lista),
cicl([A2|T],A2, Lista).