僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
例によって 手習い本風に。
; まず剰余がゼロか否か (define mod0 (lambda (n m) (cond ((zero? n) #t) ((> n m) #f) (#t (mod0 (- n m) m))))) ;関数本体 (define fb (lambda (n) (cond ((mod0 n 15) 'fizzbuzz) ((mod0 n 5) 'buzz) ((mod0 n 3) 'fizz) (#t n)))) ;どこからどこまでfizzbuzzする (define fizzbuzz (lambda (first last) (cond ((> first last) '()) (#t (cons (fb first) (fizzbuzz (+ first 1) last))))))
(fizzbuzz 8 20) gosh> (8 fizz buzz 11 fizz 13 14 fizzbuzz 16 17 fizz 19 buzz)
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。