% 1 2 3 4 5 6 7 8 % 1 | | | | | | | | | % 2 | | | | | | | | | % 3 | | | x | | x | | | | % 4 | | x | | | | x | | | % 5 | | | | k | | | | | % 6 | | x | | | | x | | | % 7 | | | x | | x | | | | % 8 | | | | | | | | | knight(X1,Y1,X2,Y2) :- ((X2 is X1+1,Y2 is Y1+2); % 1 right, 2 down (X2 is X1+2,Y2 is Y1+1); % 2 right, 1 down (X2 is X1-1,Y2 is Y1+2); % 1 left , 2 down (X2 is X1-2,Y2 is Y1+1); % 2 left , 1 down (X2 is X1+1,Y2 is Y1-2); % 1 right, 2 up (X2 is X1+2,Y2 is Y1-1); % 2 right, 1 up (X2 is X1-1,Y2 is Y1-2); % 1 left , 2 up (X2 is X1-2,Y2 is Y1-1)),% 2 left , 1 up 1=