请师傅帮忙处理表问题
先谢谢了!(defun c:tt ()
(setq v nil)
(setqcc '(10.1 11.1 12.1 30.2 31.2232.20 40 40.241)
)
(while cc
(setq a (car cc))
(setq cc (cdr cc))
(if(equal a (car cc) 1.6)
(progn
(setq v (append (list a) v))
)
(progn
(if (> (- (car cc) a ) 3)
(setq v (list(append (list a)v)))
)
)
)
)
)
;; 我的结果是(40.2 40 (32.2 31.22 30.2 (12.1 11.1 10.1)))括号不对,还少了个数, 要不得
;;希望结果((10.1 11.1 12.1) (30.2 31.2232.20 )(40 40.241)) ;;52.5 [功能] 对表分段
;;(xl_div lst nom)表分段. -> 返回 分段的表. ------by 无痕.2004.1
; lst = 表,nom = 分段的子表元素个数(从1开始计).
;;示例 (xl_div '(1 2 3 4 5 6 7 8 9) 3) -> ((1 2 3) (4 5 6) (7 8 9))
(defun xl-div (lst x / lst2)
(foreach n lst
(if (and lst2 (/= x (length (car lst2))))
(setq lst2 (cons (append (car lst2) (list n)) (cdr lst2)))
(setq lst2 (cons (list n) lst2))
)
)
(reverse lst2)
) lilq_78 发表于 2016-7-11 15:46 static/image/common/back.gif
;;52.5 [功能] 对表分段
;;(xl_div lst nom)表分段. -> 返回 分段的表. ------by 无痕.2004.1
;...
感谢朋友的帮助! lilq_78 发表于 2016-7-11 15:46 static/image/common/back.gif
;;52.5 [功能] 对表分段
;;(xl_div lst nom)表分段. -> 返回 分段的表. ------by 无痕.2004.1
;...
多谢指点!
不错的程序,谢谢楼主分享。
页:
[1]