M 式とは次の形をした式であるとして、再帰的に定義する:だそうです。
(i) 定数
(ii) 識別子
(iii) 関数[M 式; M 式; … ;M 式]
(iv) [M 式→M 式; …; M 式→M 式]
S式に直すと
(8) ハノイの塔問題を解くプログラム
Hanoi[n;A;B;C] = [n=0→NIL; T→append[Hanoi[n-1;A;C;B]]; list[A;C]; Hanoi[n-1;B;A;C]]]
再帰してます。
(DEFUN HANOI (N A B C) (COND ((EQUALP N 0) NIL) (T (APPEND (HANOI (SUB1 N) A C B) (LIST A C) (HANOI (SUB1 N) B A C)))))
このページを編集 (1110 bytes)
以下の 1 ページから参照されています。 |
This page has been visited 5225 times.