Ответ в теме: Генерация перестановок, длина которых меньше заданной

      Комментарии к записи Ответ в теме: Генерация перестановок, длина которых меньше заданной отключены
#2479

Для решения задачи достаточно вызвать функцию генерации перестановок для каждой допустимой длины и вернуть полученный результат:

permutation_length(List, Length, Permutation):-
  between(0, Length, PerLength),
  permutation(List, PerLength, Permutation).

Для перебора всех вариантов длины от нуля до Length используется встроенная функция between.

Вложения: