このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1335517816/103
#  [1] 授業単元:院試過去問(データ構造とアルゴリズム?) 
#  下記リンク専門科目蟻莪賁(3)がわかりません。(2ページ目) 
#  http://ime.nu/www.i.u-tokyo.ac.jp/edu/course/cs/pdf/2010computer.pdf 
#  (2009年東京大) 
#  問題1
#  二分木のすべてのノードをたどり、ノードに格納されている整数の総和を計算したい。
#  以下の問に答えよ.ただし、プログラムはPrologで書くこととする。
#  [3-5]環境無指定(出題はCだが大意があっていればC++でも可)、無期限 
# 

二分木の根(1).

'二分木のすべてのノードをたどり、ノードに格納されている整数の総和を計算したい。'(_ノードに格納されている整数の総和) :-
        二分木の根(_根),
        findsum(_ノードに格納されている整数,(
                    二分木のすべてのノードをたどり(_根,_ノードに格納されている整数)),
                _ノードに格納されている整数の総和).

二分木のすべてのノードをたどり([],_) :- !,fail.
二分木のすべてのノードをたどり(_ノード,_ノードに格納されている整数) :-
        二分木(_ノード,_ノード_1,_ノード_2,_ノードに格納されている整数).
二分木のすべてのノードをたどり(_ノード,_ノードに格納されている整数) :-
        二分木(_ノード,_ノード_1,_,_),
        二分木のすべてのノードをたどり(_ノード_1,_ノードに格納されている整数).
二分木のすべてのノードをたどり(_ノード,_ノードに格納されている整数) :-
        二分木(_ノード,_,_ノード_2,_),
        二分木のすべてのノードをたどり(_ノード_2,_ノードに格納されている整数).