;Tanz der Schildkröte (6.BWINF 1988, Steffen Goebbels)

(defun tanze (n &aux i) ; n gibt die Anzahl der Verfeinerungen an
    (setq i 1)
    (count anzahl
        (cond ((eq (nth i schritte) 'rechts) (draw ()() -1 -90.0 0))
              ((eq (nth i schritte) 'links ) (draw ()() -1  90.0 0)))
        (cond ((< n maxN) (tanze (+ n 1)))
              (t (draw ()() 1 0.0 laenge)))
        (cond ((eq (nth i schritte) 'rechts) (draw ()() -1  90.0 0))
              ((eq (nth i schritte) 'links ) (draw ()() -1 -90.0 0)))
        (setq i (+ i 1))))

(defun TanzDerSchildkröte (&aux wi winkel)
  (setq anzahl 6) ; 6 Tanzschritte
  (setq schritte '(vor rechts vor links vor vor))
  (setq maxN 2) ; 3-te Verfeinerung
  (setq laenge 3) ; einzelne Streckenlängen
  (setq wi 0)(setq winkel 72) ; Drehwinkel
  (draw t t -1 -60 -120)
  (draw t () -1 0 0)
  (terpri)(princ "Tanz der Schild-")(terpri)(princ "Kröte...")(terpri)
  (while (< wi 360)
     (tanze 0)(draw ()() -1 winkel 0)
     (setq wi (+ wi winkel))))

(graphic)
(TanzDerSchildkröte)