先说需求,给车位标注。单个车位标注一个数字;连续的标注“*—*”,例如“4-6”“5-9”。
实现逻辑就是先输入一个开始值,然后循环(输入步进值,标注)。
(defun c:cw()
(setq QS 0)
(setq QS (getint "\n输入开始值:"))
(setq i 0)
(setq BJ 0)
(while (< i 1000)
(setq BJ (getint "\n输入步进值:"))
(cond
((< BJ 2) (setq txt (itoa (+ BJ QS))))
(t (setq txt (strcat (itoa QS) "-" (itoa (- (+ QS BJ) 1)))))
)
(setq QS (+ QS BJ))
(setq i (+ i 1))
(command "ZJWZ" txt)
)
)
附上代码和运行情况。
连续跳出上次输入步进值,一次标注后就报函数错误。
实现逻辑就是先输入一个开始值,然后循环(输入步进值,标注)。
(defun c:cw()
(setq QS 0)
(setq QS (getint "\n输入开始值:"))
(setq i 0)
(setq BJ 0)
(while (< i 1000)
(setq BJ (getint "\n输入步进值:"))
(cond
((< BJ 2) (setq txt (itoa (+ BJ QS))))
(t (setq txt (strcat (itoa QS) "-" (itoa (- (+ QS BJ) 1)))))
)
(setq QS (+ QS BJ))
(setq i (+ i 1))
(command "ZJWZ" txt)
)
)
附上代码和运行情况。
连续跳出上次输入步进值,一次标注后就报函数错误。