このディレクトリの索引
#  
#  図.1のような。格子状の経路があるとします。
#  (1) このときPからQまでいくのに何通りの経路があるか数えてください。ただし遠回りはせずかならずQに近づく方向に進む(右方向か下方向にだけ進む)とします。
#  (2) (1)と条件は同じで、図.2のように経路の一部がない(通れない)場合に、PからQまでいくのに何通りの経路があるか数えてください。
#   P-+-+-+    P-+-+-+ 
#   | | | |    | | | | 
#   +-+-+-+    +-+-+-+ 
#   | | | |    |   | | 
#   +-+-+-+    +-+-+ + 
#   | | | |    | | | | 
#   +-+-+-+    +-+ +-+ 
#   | | | |    | | | | 
#   +-+-+-Q    +-+-+-Q 
#     図.1       図.2 
#  経路の表現の仕方、記憶の仕方は自由とします。上記のようなキャラクタでの表現でもよいですし、最初からプログラムで扱いやすいデータとして持っていてもOKです。入力も外部からの入力でもよいですし、プログラム中にコーディングされていてもOKです。
#  

出発点(あ).

終着点(と).

接続(あ,い).
接続(あ,お).
接続(い,う).
接続(い,か).
接続(う,え).
接続(う,き).
接続(え,く).
接続(お,か).
接続(お,け).
接続(か,き).
接続(き,く).
接続(き,さ).
接続(く,し).
接続(け,こ).
接続(け,す).
接続(こ,さ).
接続(こ,せ).
接続(さ,そ).
接続(し,た).
接続(す,せ).
接続(す,ち).
接続(せ,つ).
接続(そ,た).
接続(ち,つ).
接続(つ,て).
接続(て,と).

通れない通路ありで右または下のみ移動可の道順は何通り(_何通り) :-
        度数(道順(_),_何通り).

道順(_道順) :-
        出発点(_出発点),
        終着点(_終着点),
        道順(_出発点,_終着点,_道順).

道順(_点,_隣接点,[_点,_隣接点]) :-
        接続(_点,_隣接点).
道順(_点,_終着点,[_点|R]) :-
        接続(_点,_隣接点),
        道順(_隣接点,_終着点,R).


%  度数/2