読書会 (5)
相当へろへろです。一旦下書きしたんですが、内容微妙なので破棄。
以下なナニをでっち上げて
(define (fib-iter a b p q count) (cond ((= count 0) b) (else (fib-iter (+ (* b q) (* a q) (* a p)) (+ (* b p) (* a q)) p q (- count 1)))))
gosh で評価。
$ gosh gosh> (add-load-path ".") ("." "/usr/share/gauche/site/lib" "/usr/share/gauche/0.8.13/lib") gosh> (load "fib-iter-sample") #t gosh> (fib-iter 1 0 0 1 0) 0 gosh> (fib-iter 1 0 0 1 1) 1 gosh> (fib-iter 1 0 0 1 2) 1 gosh> (fib-iter 1 0 0 1 3) 2 gosh> (fib-iter 1 0 0 1 4) 3 gosh> (fib-iter 1 0 0 1 5) 5 gosh>
ふむ。これって単発でも動くのか。当たり前か。なんとなく逆算ってカンジなのは分かるのですが、色々な意味で力尽きてる状態ッス。良イシュウマツを。