本帖最后由 夏生生 于 2021-12-7 10:53 编辑
抱歉,函数拷贝错文件了
- ;;;=============================================
- ;;; 通用函数 加前导0
- ;;;参数: str------字符串
- ;;; n---------加零后字符串长度
- ;;;返回值:加前导零后字符串
- (defun add0 (str n)
- (setq n (- n (strlen str)))
- (repeat n (setq str (strcat "0" str)))
- str
- )
- ;;;=============================================
- ;;; 通用函数 压缩数据:2元整数表压缩成一个整数
- ;;;参数: lst-------整数表
- ;;; imax------整数最大位数
- ;;;返回值:整数
- (defun lst2RAR (lst imax / x y)
- (setq x(car lst)y(cadr lst))
- (atoi (strcat (itoa x) (add0 (itoa y) imax)))
- )
- ;;;=============================================
- ;;; 通用函数 解压缩数据:一个整数压缩成2元整数表
- ;;;参数: lst-------整数表
- ;;; imax------整数最大位数
- ;;;返回值:2个整数组成的表
- (defun RAR2lst (i imax)
- (setq imax (expt 10 imax))
- (list (/ i imax)(rem i imax))
- )
|