このディレクトリの索引
#  
#  1から10までの整数の順列をすべて表示するプログラムをお願いします。 
#  

'1から10までの整数の順列をすべて表示する' :-
        findall(N,for(1,N,10),L),
        順列(L,10,L1),
        writef('%t,%t,%t,%t,%t,%t,%t,%t,%t,%t\n',L1),
        fail.

順列(Y,0,[]).
順列(Y,N,[A|X]) :-
        del(A,Y,Z),
        M is N - 1,
        順列(Z,M,X).

del(A,[A|X],X).
del(A,[B|X],[B|Y]) :-
        del(A,X,Y).