このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1258158172/610
#  >>606さん 
#   
#  問題 
#  A さんと B さんがゲームで対戦した.対戦は N 回にわたって行った.各回の対戦において, 
#  より高い点数を獲得した人がその回の勝者となる. 
#  すなわち,第 i 回目の対戦で  
#  A さんの点数が B さんの点数より大きければ第 i 回目は A さんの勝ち, 
#  B さんの点数が A さんの点数より大きければ B さんの勝ち, 
#  同点の場合はどちらの勝ちにもならない.  
#  N 回の対戦における A さんと B さんの点数が与えられたとき, 
#  A さんと B さんがそれぞれ何回勝ったかを出力するプログラムを作成せよ.  
#   
#  入力 
#  入力は 1+N 行からなる.  
#  1 行目には対戦の回数 N (1 ≦ N ≦ 1000000) が書かれている.  
#  2 行目以降の i+1 行目 (1 ≦ i ≦ N) には i 回目の対戦における A さんと B さんの点数が空白区切りで書かれている. 
#  各々の点数は 0 以上 100 以下の整数である.  
#   
#  出力 
#  出力は 1 行からなる. A さんが勝った回数と B さんが勝った回数をこの順に空白で区切って出力せよ.  
#   
#   
#   
#  となっています 
#  入力データ2までとかならまだ件数が少ないので良いのですが、 
#  入力データ5になると1万件の入力データがあるのでファイルを読み込む以外は無いと思いました 
#   
#  そのサイトに行ってもどうすればいいか良く解りませんでした 
#  ですので、書き方ではなくてソースを書いてください お願いします 
# 
# 

program :-
  user_parameters([_ファイル名]),
  get_split_lines(_ファイル名,[':',' ',','],L),
  二数のどちらが大きいか(L,0,0,_カウンタA,_カウンタB),
  write_formatted('A : %t,B : %t\n',[_カウンタA,_カウンタB]).

二数のどちらが大きいか([],_カウンタA,_カウンタB,_カウンタA,_カウンタB).
二数のどちらが大きいか([[_,_先の方,_,_後の方]|R1],A,B,_カウンタA,_カウンタB) :-
  _先の方 > _後の方,
  A2 is A + 1,
  二数のどちらが大きいか(R1,A2,B,_カウンタA,_カウンタB).
二数のどちらが大きいか([[_,_先の方,_,_後の方]|R1],A,B,_カウンタA,_カウンタB) :-
  _先の方 < _後の方,
  二数のどちらが大きいか(R1,A,B2,_カウンタA,_カウンタB).
二数のどちらが大きいか([[_,_先の方,_,_後の方]|R1],A,B,_カウンタA,_カウンタB) :-
  二数のどちらが大きいか(R1,A,B,_カウンタA,_カウンタB).