いろんな言語で宿題スレ 第三編at TECHいろんな言語で宿題スレ 第三編 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト152:デフォルトの名無しさん 10/01/03 19:57:09 >>151 % Prolog は集約は得意としない。その場でこの述語を考えるのは負担が大きいので、 % 以下のような準備が必要だろう。SQLのcount(*)を解決する処理だが。 集約_数_逆順ならび([],L,L) :- !. 集約_数_逆順ならび([A|R1],L1,L) :- \+(member([_,A],L1)), 集約_数_計測(A,R1,L2,1,Count), 逆順整列([Count,A],L1,L3), 集約_数_逆順ならび(L2,L3,L),!. 集約_数_計測(_,[],[],Count,Count) :- !. 集約_数_計測(A,[A|R1],L2,Count1,Count) :- Count2 is Count1 + 1, 集約_数_計測(A,R1,L2,Count2,Count),!. 集約_数_計測(A,[B|R1],[B|R2],Count1,Count) :- \+(A = B), 集約_数_計測(A,R1,R2,Count1,Count),!. 逆順整列(L,[],[L]) :- !. 逆順整列(L,[L1|R1],[L,L1|R1]) :- L @>= L1,!. 逆順整列(L,[L1|R1],[L1|R2]) :- 逆順整列(L,R1,R2). 153:デフォルトの名無しさん 10/01/03 23:45:33 >>151 使用言語:J ofic=:;:'b a b b a a c d g h c x r t a d c g j u y w q' ]ofic=:ofic,;:'g v c f g v a d e x n u y t y r t a s w' +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |b|a|b|b|a|a|c|d|g|h|c|x|r|t|a|d|c|g|j|u|y|w|q|g|v|c|f|g|v|a|d|e|x|n|u|y|t|y|r|t|a|s|w| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 10{.\:~(~.,.~<@#/.~)ofic +-+-+ |6|a| +-+-+ |4|g| +-+-+ |4|c| +-+-+ |3|y| +-+-+ |3|t| +-+-+ |3|d| +-+-+ |3|b| +-+-+ |2|x| +-+-+ |2|w| +-+-+ |2|v| +-+-+ 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch