CHỨC NĂNG: Ra điều liện thực hiện một số lệnh
CÚ PHÁP:
(if testexpr thenexpr [elseexpr])
GIẢI THÍCH:
testexpr: Là biểu thức kiểm tra điều kiện
thenexpr: Biểu thức lệnh được thực hiện nếu biểu thức testexpr nhận giá trị T
elseexpr: Biểu thức lệnh được thực hiện nếu biểu thức testexpr nhận giá Nil. Nếu không có biểu thức này, hàm không thực hiện và trả về giá trị nil
b. Hàm (while ...)
CHỨC NĂNG: Thực hiện các biểu thức, lệnh trong hàm một số lần lặp có điều kiện
CÚ PHÁP:
(while testexpr expr)
GIẢI THÍCH:
testexpr: Là biểu thức kiểm tra, khi nào testexpr nhận giá trị nil, vòng lặp chương trình ngừng thực hiện
expr: Biểu thức, lệnh cần thực hiện
VÍ DỤ:
(
defun
C:vdt()
(
setq
n 1)
(
setq
pt1 (
list
0 0))
(
while
(<= n 10)
(
setq
pt2 (
list
n (+ n 0.5)))
(
setq
n (1+ n))
(
command
"LINE" pt1 pt2 "")
)
(
command
"ZOOM" "e")
)
c. Hàm (repeat ...)
CHỨC NĂNG: Thực hiện các biểu thức, lệnh trong hàm một số lần lặp nhất định
CÚ PHÁP:
(repeat int [expr]...)
GIẢI THÍCH:
int: Là số nguyên chỉ lần lặp
expr: Biểu thức, lệnh cần thực hiện
VÍ DỤ:
(defun C:vdt()
(setq n 1)
(setq pt1 (list 0 0))
(repeat 10
(setq pt2 (list n (+ n 0.5)))
(setq n (1+ n))
(command "LINE" pt1 pt2 "")
)
(command "ZOOM" "e")
)
d. Hàm (progn ...)
CHỨC NĂNG: Tập hợp các biểu thức thành một biểu thức và bắt các biểu thức này thực hiện theo một điều khiển chung
CÚ PHÁP:
(progn [expr]...)
GIẢI THÍCH: