;;; Scheme Recursive Art Contest Entry ;;; ;;; Please do not include your name or personal info in this file. ;;; ;;; Title: ;;; ;;; Description: ;;; Stars are pretty cool ;;; And rainbows are cool as well ;;; Here's a rainbow star (define (draw) ; YOUR CODE HERE (speed 0) (rt 18) (repeat_geometry '(geometric 800 5) 200 5) (ht) (exitonclick)) (define (repeater f n) (define (helper c) (cond ((= n c) (pu)) (else (eval f) (lt (/ 360 n)) (helper (+ c 1)) ) ) ) (helper 0) ) (define (repeat_geometry f n k) (define (helper g i) (cond ((= i 0) g) (else (color (rgb (+ 0.5 (* 0.5 (sin (* 0.05 (- n i))))) (+ 0.5 (* 0.5 (sin (+ 90 (* 0.05 (- n i)))))) (+ 0.5 (* 0.5 (sin (+ 180 (* 0.05 (- n i)))))) ) ) (begin_fill) (repeater g k) (end_fill) (define val (car(cdr g))) (helper (append (list (car g) (* (car (cdr f)) (/ i (+ n 1)))) (cdr (cdr g))) (- i 1) ) ) ) ) (define final (helper f n)) (color "white") (begin_fill) (repeater final k) (end_fill) (pu) ) (define (geometric d n) (define (helper c) (cond ((or (= c n) (= d 0)) (pu)) (else (lt (- 180 (/ 180 n))) (fd (* 2 d (sin (/ 360 n)))) (helper (+ c 1)) ) ) ) (pd) (helper 0) ) ; Please leave this last line alone. You may add additional procedures above ; this line. (draw)