hanoi(N, I) :- 
       move(N, a, b, c, I).
move(N, A, B, C, I) :-
       N > 1, N1 is N-1,
       move(N1, A, C, B, I1),
       move(1,  A, B, C, 1),
       move(N1, C, B, A, I2),
       I is I1 + I2 + 1.
move(1, A, B, _, 1) :-
       write(A),write(' to '),write(B),nl.

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-02-23 (木) 23:33:35