프로그램
캐드 분류

산수 리습 소숫점 좀 변경해주세요.

컨텐츠 정보

  • 170 조회
  • 4 댓글
  • 0 추천
  • 0 비추천
  • 목록

본문

수고 많으십니다.
제가 사용하는 리습입니다만.
곱셈을 하거나 누눗셈을 하게 되면 소숫점이 사라지는 상황이 나오는데요.
나눠야 하는 대상이 소숫점이 있다보니.. 이걸 사용하게되면 없어지는 상황이 발생합니다 ㅠ.ㅠ
혹시 이 아래 있는 리습 문구중에 소숫점을 표현하고 싶다면 어디를 어떻게 추가변경 해야될까요??
(defun C:- (/ SUMTXT n objnew objlen cal ename no txtzn txt1 ftxt elist)
     (setvar "CMDECHO" 1)
     (setq n 0 t 0
           objnew (ssget '((0 . "text")))
           objlen (sslength objnew)
           cal (getstring "n Cal. Mark (+ – * /) :")
           sumtxt (getint "n 일률적으로 적용시키고자 하는값 :")
     )
     (while (< n objlen)
        (setq ename (ssname objnew n)
              elist (entget ename))
        (if (or (= "TEXT" (cdr (assoc 0 elist))) (= "MTEXT" (cdr (assoc 0 elist))) )
            (progn
               (setq txt (cdr (assoc 1 elist)))
               (if (or (/= 0 (atoi (substr txt (strlen txt) (strlen txt)))) (= "0″ (substr txt (strlen txt) (strlen txt))) )
                   (progn
                      (if (distof txt)
                          (setq txtzn txt)
                          (search-text)
                      );if
                      (if (= "+" cal) (setq no (+ (atoi txtzn) sumtxt)))
                      (if (= "-" cal) (setq no (- (atoi txtzn) sumtxt)))
                      (if (= "/" cal) (setq no (/ (atoi txtzn) sumtxt)))
                      (if (= "*" cal) (setq no (* (atoi txtzn) sumtxt)))
                      (if (distof txt)
                          (setq txt1 (itoa no))
                          (setq txt1 (strcat ftxt (itoa no)))
                      );if
                      (setq elist (subst (cons 1 txt1) (assoc 1 elist) elist))
                      (entmod elist)
                   );progn
               );if
            );progn
        );if
        (setq n (+ n 1))
     );while
     (princ)
)

관련자료

댓글 4 / 1 페이지

aeroplus님의 댓글

어디를 어떻게 고쳐야 하는지는 상황에 따라 다를 수 있어서…

참고로만 알려드리자면…

atoi 대신 atof itoa 대신 rtos

함수를 사용하시면 됩니다.

함수 사용법은 LISP 도움말을 참고하시기 바랍니다.

전체 6,983 / 1 페이지
번호
제목
이름

최근글


새댓글


알림 0