2009年2月22日日曜日

計算機プログラムの構造と解釈 問題1.12 問題1.13


このエントリーをはてなブックマークに追加


問題1.12


次のパターンをPascal三角形という
¥begin{matrix} &&&&&1¥¥ &&&&1&&1¥¥ &&&1&&2&&1¥¥ &&1&&3&&3&&1¥¥ &1&&4&&6&&4&&1 ¥end{matrix}
三角形の辺上のすべて1で、内部の数は、その上の2つの数の話である。
再帰的プロセスでこれらの要素を計算する手続きを書け。



(define (pascal_tri r c)
(cond ((= c 0) 1)
((= r c) 1)
(else (+ (pascal_tri(- r 1)(- c 1))
(pascal_tri(- r 1) c )))))



おまけ
n行目が(x+y)^nの展開の項の係数になっている。
x+y
x^2+2xy+y^2
x^3+3x^2y+3xy^2+y^3


問題1.13


¥phi = (1+sqrt5)/2としてFib(n)が¥phi^n/sqrt5に最も近い整数であることを証明せよ。
フィボナッチの説明の時に証明済み。





0 件のコメント:

コメントを投稿