Jar*_*vis 5 list matrix prolog
如何在 Prolog 中围绕其中心点旋转 4 x 4 矩阵?在 4 x 4 矩阵的情况下,我可以简单地重新排列元素,但是对于像 N x N 这样的一般情况如何做到这一点?
你想要的不完全是矩阵转置......但几乎!
:- use_module(库(clpfd) )。 矩阵旋转(Xss,Zss):- 转置(Xss,Yss), 映射列表(反向,Yss,Zss)。
示例查询:
?- 矩阵旋转([[ a1 , a2 , a3 , a4 ], [b1,b2,b3,b4], [c1,c2,c3,c4]],Xss)。 Xss = [[c1,b1, a1 ], [c2,b2, a2 ], [c3,b3,a3 ], [c4,b4,a4 ]]。