Đến nội dung


Hình ảnh
- - - - -

[Yêu Cầu] Lisp Nhân Nhiều Số Với Một Số Lựa Chọn


  • Please log in to reply
1 reply to this topic

#1 victor85

victor85

    biết lệnh stretch

  • Members
  • PipPipPip
  • 169 Bài viết
Điểm đánh giá: 10 (tàm tạm)

Đã gửi 12 May 2016 - 05:29 PM

Mình gặp trường hợp có một số lượng lớn là text số thực: A, B, C, D .... đang cần phải nhân thêm vào một số hạng là x.

Kính mong các bác viết dùm lisp: Nhantext.lsp như sau ạ:

Gõ lệnh: NT

Chọn các text số thực: ta chọn các text số thực mong muốn cần tính (A, B, C, D...)

Nhập số hạng cần nhân: nhập tay vào số thực x -> Enter

Nhập số số thập phân cần làm tròn sau dấu phẩy: (Nhập từ 0 trở đi) -> Enter

Ra kết quả là các text số thực mới là kết quả của phép nhân A*x, B*x, C*x, D*x .... thay thế lần lượt đúng vào các text cũ ah (sau khi đã làm tròn).

Em xin chân thành cảm ơn các bác trước. Kính mong các bác xuống tay giúp đỡ ah :)


  • -1

#2 hainguyen2014

hainguyen2014

    biết vẽ arc

  • Members
  • PipPip
  • 43 Bài viết
Điểm đánh giá: 12 (tàm tạm)

Đã gửi 12 May 2016 - 11:12 PM

Bạn thứ xem đúng ý chưa nhé!

 

(prompt "Lenh NT")

(defun C:NT() ;;;;;;;;;; NHAN VOI MOT SO ;;;;;;;;;;;
(command "undo" "BE")
(setq ttt (getreal "Nhap gia tri muon nhan : "))
(setq tp (getint "Nhap so thap phan : "))
(princ "Chon cac Text can nhan:")
(setq ss (ssget '((0 . "TEXT"))))
(setq j -1)
(repeat (sslength ss)
(setq j (+ j 1))
(setq dt1 (ssname ss j))
(setq el (entget dt1) )
(setq gt (cdr (assoc 1 el) ))
(setq gt1 (atof gt))
(setq gt2 (* gt1 ttt))
(setq gt2 (rtos gt2 2 tp))
(setq elt (subst (cons 1 gt2) (assoc 1 el) el))
(entmod elt)
)
(command "undo" "END")
)


  • 2