辺の和が3以上1000以下の直角三角形の個数を求める(_個数) :- Max1 is truncate(sqrt(1000)), findall(N2,(for(1,N,Max1),N2 is truncate(N*N)),L1), count((組み合わせ(L1,3,[A,B,C]),C is A+B,C>=3,C=<1000),_個数).
辺の和が3以上1000以下の直角三角形のうち、最も面積の大きい直角三角形の3辺の長さ(_短辺1,_短辺2,_長辺) :- Max1 is truncate(sqrt(1000)), findall(N2,(for(1,N,Max1),N2 is truncate(N*N)),L1), findmax([C,A,B],(組み合わせ(L1,3,[A,B,C]),C is A+B,C>=3,C=<1000),[_短辺1,_短辺2,_長辺]).