p>
(B (- k 1)) (Line 3 h)
(C (- k 1)) (Line 2 (* 2 h))
(A (- k 1)) (Line 1 h)
(B (- k 1))
))
)
(
defun C (k)
( cond ((> k 0)
(C (- k 1)) (Line 5 h)
(D (- k 1)) (Line 4 (* 2 h))
(B (- k 1)) (Line 3 h)
(C (- k 1))
))
)
(
defun D (k)
( cond ((> k 0)
(D (- k 1)) (Line 7 h)
(A (- k 1)) (Line 6 (* 2 h))
(C (- k 1)) (Line 5 h)
(D (- k 1))
))
)
;;
;; Головна процедура
;; Параметри: - кількість ітерацій
;;
(
defun SierpinskiCurve (Count)
(InitGraph); Установка графічного режиму
( setq h (div * SquareSize * 4) ); Обчислення довжини лінії
( setq x0 (div * MaxX * 2) ); Обчислення початкової точки
( setq y0 (+ (div * MaxY * 2) h )); Для малювання
( ; Основний цикл
do ((i 1 )); Ініціалізація лічильника
(( eql i (+ Count 1)) 'Done); Умова завершення
( setq x0 (- x0 h) ); Обчислення координат початкової
( setq h (div h 2) ); Точки для малювання і
( setq y0 (+ y0 h) ); Одиничної довжини лінії
( setq Px x0 Py y0 ); Установка пера
( color i ); Установка кольору для малювання
(A i) (Line 1 h) ; Малювання
(B i) (Line 3 h)
(C i) (Line 5 h)
(D i) (Line 7 h)
( pause 1.0 ); Затримка
( setq i (+ i 1 )); Інкрімент лічильника
) ; Кінець основного циклу
)
( print Try (SierpinskiCurve 4) ); Підказка
Керівництво користувача
Вимоги до системі:
Гј x86 персональний комп'ютер (386 мінімум; 486, Pentium, або Pentium Pro рекомендується)
Гј Microsoft DOS 3.30 або вище
Гј Microsoft Windows 3.1, Microsoft Windows for Workgroups, Microsoft Windows 95, Microsoft Windows NT 3.51 або 4.0
Гј 512 Kb RAM
Гј 5 Kb вільного простору на жорсткому диску
Гј Встановлений інтерпретатор XLisp версії 2.1 або вище
Для запуску програми необхідно:
q Включити комп'ютер
q Завантажити інтерпретатор XLisp c параметром В«Sierpins.lspВ»: C: XLISP XLISP.EXE SIERPINS.LSP [2] Гѓ p>
q У відповідь на запрошення XLisp ввести: (SierpinskiCurve 4) Гѓ
Тест програми
Тест проводився на робочій станції з наступною конфігурацією:
q Pentium 166
q 32 Mb RAM
q SyncMaster 17Glsi
q S3 Trio64V +
q Windows 95
Інт...