このディレクトリの索引

# 出典 :: Pascalの宿題は俺にやらせろ!!Part2 #954 # pascal pcpad # 1個の自然数nを適当決めて、nチームが参加する # リーグ戦の全試合を表示するプログラムを書きなさい。 リーグ戦の全試合(_チーム名ならび,_リーグ戦の全試合) :- findall([_対戦相手_1,_対戦相手_2], 組合せ(_チーム名ならび,2,[_対戦相手_1,_対戦相手_2]),_リーグ戦の全試合). 組合せ(L,1,[A]) :- !,member(A,L). 組合せ(L1,N,L2) :- '先頭要素より後のならびの全ての組み合わせの先頭に先頭要素を付加して行く'(L1,N,L2). '先頭要素より後のならびの全ての組み合わせの先頭に先頭要素を付加して行く'([A|R1],N,[A|R2]) :- 一要素少ないならびの組み合わせ(R1,N,R2). '先頭要素より後のならびの全ての組み合わせの先頭に先頭要素を付加して行く'([_|R1],N,R2) :- '先頭要素より後のならびの全ての組み合わせの先頭に先頭要素を付加して行く'(R1,N,R2). 一要素少ないならびの組み合わせ(R1,N,R2) :- succ(M,N), 組合せ(R1,M,R2). ?- リーグ戦の全試合([岩倉組,福徳相互銀行,十條製紙,王子製紙,古河電工],_組合せならび). _組合せならび = [[岩倉組,福徳相互銀行],[岩倉組,十條製紙],[岩倉組,王子製紙],[岩倉組,古河電工],[福徳相互銀行,十條製紙],[福徳相互銀行,王子製紙],[福徳相互銀行,古河電工],[十條製紙,王子製紙],[十條製紙,古河電工],[王子製紙,古河電工]]. ?-