Я пишу функцию, которая возвращает отдельные подсписные буквы размером n.Infinite loop prolog
Когда я запускаю следующий пролог с запросом gen_list_n (4, D, [1,2,3,4]), он запускается в бесконечный цикл после возвращения первого ответа. Как я могу это предотвратить?
member_rem(E,L,R) :-
append(X,Y,R),
append(X ,[E], L0),
append(L0,Y, L).
gen_list_n(0,[],_).
gen_list_n(N,[X|Xs],L) :-
N > 0,
N1 is N-1,
member_rem(X,L,R),
gen_list_n(N1,Xs,R).