説明不要。
(use srfi-27) (define nil '()) (define zun 'ズン) (define doko 'ドコ) (define (make-zun-doko) (if (= (random-integer 2) 0) zun doko)) (define (init-zun-doko) (define (iter n lst) (if (= n 0) lst (iter (- n 1) (append lst (cons (make-zun-doko) nil))))) (iter 5 nil)) (define (finish-zun-doko? lst) (equal? lst `(,zun ,zun ,zun ,zun ,doko))) (define (print-kiyoshi lst) (define (iter l) (if (null? l) 'キ・ヨ・シ! (begin (print (car l)) (iter (cdr l))))) (iter lst)) (define (kiyoshi) (define (iter lst) (if (finish-zun-doko? lst) (print-kiyoshi lst) (begin (print (car lst)) (iter (append (cdr lst) (cons (make-zun-doko) nil))) ))) (iter (init-zun-doko)))
実行結果
gosh> (kiyoshi) ドコ ドコ ズン ズン ズン ズン ズン ズン ズン ズン ズン ドコ キ・ヨ・シ!
gosh> (kiyoshi) ズン ドコ ズン ドコ ドコ ズン ズン ドコ ドコ ズン ズン ドコ ドコ ドコ ドコ ズン ドコ ズン ズン ドコ ドコ ドコ ズン ドコ ズン ズン ドコ ドコ ドコ ドコ ズン ドコ ズン ドコ ズン ズン ドコ ドコ ズン ズン ズン ドコ ズン ズン ズン ドコ ドコ ズン ドコ ズン ドコ ドコ ドコ ズン ドコ ズン ズン ズン ズン ドコ キ・ヨ・シ!
同じ間違いをやらかしましたw
直した。
(use srfi-27) (define nil '()) (define zun 'ズン) (define doko 'ドコ) (define kiyoshi 'キ・ヨ・シ!) (define (make-zun-doko) (if (= (random-integer 2) 0) zun doko)) (define (make-zun-doko-array) (define (iter n lst) (if (= n 0) lst (iter (- n 1) (append lst (cons (make-zun-doko) nil))))) (iter 5 nil)) (define (finish-zun-doko? lst) (equal? lst `(,zun ,zun ,zun ,zun ,doko))) (define (zun-doko-kiyoshi) (define (iter) (let ((zun-doko-array (make-zun-doko-array))) (print zun-doko-array) (if (finish-zun-doko? zun-doko-array) kiyoshi (iter)))) (iter))
実行結果
gosh> (zun-doko-kiyoshi) (ドコ ドコ ズン ドコ ドコ) (ズン ズン ドコ ズン ズン) (ズン ズン ドコ ズン ズン) (ズン ドコ ドコ ズン ズン) (ドコ ドコ ドコ ズン ズン) (ドコ ズン ズン ズン ドコ) (ドコ ドコ ドコ ドコ ドコ) (ズン ドコ ズン ドコ ズン) (ドコ ドコ ドコ ズン ドコ) (ドコ ズン ドコ ドコ ドコ) (ズン ズン ドコ ズン ドコ) (ズン ズン ドコ ドコ ズン) (ズン ドコ ドコ ドコ ズン) (ドコ ドコ ズン ズン ズン) (ドコ ズン ズン ドコ ドコ) (ズン ドコ ドコ ズン ズン) (ドコ ズン ズン ズン ズン) (ズン ドコ ドコ ズン ドコ) (ドコ ドコ ズン ズン ドコ) (ドコ ドコ ドコ ズン ズン) (ズン ドコ ズン ズン ズン) (ズン ドコ ズン ズン ズン) (ズン ズン ドコ ズン ドコ) (ズン ドコ ズン ドコ ドコ) (ズン ドコ ズン ズン ズン) (ズン ドコ ズン ドコ ドコ) (ズン ズン ズン ズン ズン) (ドコ ドコ ズン ズン ズン) (ズン ズン ズン ズン ズン) (ズン ズン ドコ ドコ ドコ) (ドコ ドコ ドコ ズン ズン) (ズン ドコ ズン ズン ドコ) (ズン ズン ズン ズン ドコ) キ・ヨ・シ!