このディレクトリの索引

http://pc12.2ch.net/test/read.cgi/tech/1255709298/651 
#  [1] 授業単元: C言語演習 
#  [2] 問題文(含コード&リンク): 
#  正の整数nの2乗の数に、2種類の数字しか現れない 
#  4桁の正の整数 n をすべて挙げなさい

'正の整数nの2乗の数に、2種類の数字しか現れない4桁の正の整数 n をすべて挙げる'(L) :- 
    findall(N,'正の整数nの2乗の数に、2種類の数字しか現れない4桁の正の整数 n '(N),L). 

'正の整数nの2乗の数に、2種類の数字しか現れない4桁の正の整数 n '(N) :- 
    組合せ([0,1,2,3,4,5,6,7,8,9],2,[A,B]), 
    length(L,9), 
    '2種類の数字しか現れないならび'(A,B,0,0,L), 
    concat_atom(L,Atom), 
    atom_to_term(Atom,N1,_), 
    N is truncate(sqrt(N1)). 
    N >= 1000,N =< 9999, 
    U is N * N. 

'2種類の数字しか現れないならび'(_,_,1,1,[]) :- !. 
'2種類の数字しか現れないならび'(A,B,_,K,[A|R]) :- 
    '2種類の数字しか現れないならび'(A,B,1,K,R). 
'2種類の数字しか現れないならび'(A,B,K,_,[B|R]) :- 
    '2種類の数字しか現れないならび'(A,B,K,1,R).