トップ «前の日記(2013-04-26(Fri)) 最新 次の日記(2013-04-28(Sun))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2013-04-27(Sat) 晴れてたが、さほど暖かくもなかったかも

fizzbuzz のリストを少し短く

どこを参考にしたかもう忘れたが、 負だか空だかが半分近くな長い循環リストを 二つに分けてみた。
冗漫なデータは少しましになったが、 今度はロジックの方が冗漫になった、気がする。

#!/usr/bin/env gosh
 
(define flist '#0=(#f #f "fizz" . #0#))
(define blist '#0=(#f #f #f #f "buzz" . #0#))
 
(define fizz
  (lambda (fl bl first last)
    (cond
     ((and (not (car fl)) (not (car bl)))
      (display first)))
    (cond
     ((car fl) (display (car fl))))
    (cond
     ((car bl) (display (car bl))))
    (cond
     ((eq? first last) (display '#\newline))
     (#t
      (display '#\newline)
      (fizz (cdr fl) (cdr bl)  (+ first 1) last)))))
 
(fizz flist blist 1 100)

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。