clean.scm
30分プログラム、その28。一回休んでしまった。
今回は、id:selvaggioあたりと話した掃除当番を割りふるプログラム。
ルール
- 掃除当番は毎週交代
- 一度に三人づつ
- 2007/4/11より開始
$ gosh clean.scm (Alice Bob Charry) # 一週間後 $ gosh clean.scm (David Eva Fred)
(use srfi-1) (use srfi-19) (define member (apply circular-list '(Alice Bob Charry David Eva Fred George Henly Iwan Jack Kent Linda Mzp Nate Oliver))) (define start-date (make-date 0 0 0 0 11 4 2007 9)) (define (week-diff lhs rhs) (- (date-week-number lhs 0) (date-week-number rhs 0))) (define (get-member week-num) (take (drop member (* week-num 3)) 3)) (define (main args) (print (get-member (week-diff (current-date) start-date))))
- 初めて循環リストを使った
- 本当はメール発信までやりたかったんだけど、それは無理