Как использовать tranpose и findall для печати всех переменных в предикате
Я хотел знать, как я мог бы использовать tranpose и findall для вывода списка всех переменных в предикате и отображения его в виде матрицы?
так что это предикат со всеми переменными.
across(2,4,2,4).
across(2,10,2,4).
across(3,4,4,12).
across(3,10,2,6).
across(4,3,2,6).
across(4,6,4,10).
1 ответ
Вероятно, проще хранить его в предикате.
getAcross(List) :- findall([A,B,C,D], across(A,B,C,D), List).
Так getAcross(X)
будет хранить список [[A,B,C,D],[A,B,C,D]...
так далее
Если вы говорите о транспонировании матрицы, например, вам может понадобиться это только в том случае, если у вас есть ограничения вниз.:)