Đến nội dung


Hình ảnh
- - - - -

[Yêu cầu] Lisp kết hợp lệnh Array và Copy


  • Please log in to reply
54 replies to this topic

#1 matden_304

matden_304

    biết vẽ line

  • Members
  • PipPip
  • 29 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 19 September 2011 - 07:40 PM

Nhờ các anh chị trên diễn đàn viết giùm em cái lisp kết hợp giữa Array và Copy, em thể hiện qua cái hình dưới đây. Sơ bộ là em vẽ 1 bậc thang, sau đó chọn base point và điểm copy đến, cuối cùng là chọn số lần copy. Các anh chị có thể mở rộng thêm đối với các text có số thì thêm tùy chọn là tự động tăng dần giá trị của nó.

Nhân đây em cũng nhờ viết giùm em cái lisp nhỏ ^^. Em vẽ các đoạn thẳng rồi dùng lệnh Mirror hoài nên thấy hơi chậm. VD như là em dùng lệnh LL, vẽ đoạn thẳng AB và kết quả là hiện ra đoạn thẳng CB có chiều dài gấp đôi AB( A là trung điểm CB)
Xin cảm ơn các anh chị
Hình đã gửi
  • 0

#2 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 19 September 2011 - 08:03 PM

Nhờ các anh chị trên diễn đàn viết giùm em cái lisp kết hợp giữa Array và Copy, em thể hiện qua cái hình dưới đây.

Lisp này Array theo ý bạn
P/S: đây là lisp trên Cadviet, tôi thêm osnap và undo cho tiện và tránh bị lỗi.

(defun C:CA (/ dt p1 p2 sl x)
(command "undo" "be")
(setq osm (getvar "osmode"))
(setq dt (ssget)
p1 (getpoint "\nDiem goc: ")
p2 (getpoint p1 "\nDiem den: ")
sl (getint "\nSo lan: ")
x 1)
(setvar "osmode" 0)
(repeat sl
(command "copy" dt "" p1 (polar p1 (angle p1 p2) (* (distance p1 p2) x)))
(setq x (1+ x)))
(command "undo" "e")
(setvar "osmode" osm)
(princ))

  • 2

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#3 matden_304

matden_304

    biết vẽ line

  • Members
  • PipPip
  • 29 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 19 September 2011 - 08:56 PM

Em xin cảm ơn anh DOan Van Ha. Cái lisp đó nó bị tắt hết Osnap nên không thể bắt điểm chính xác được. Anh có thể giữ nguyên tùy chọn Osnap như hiện hành và bổ sung thêm lựa chọn tăng giá trị các số của các Text nằm trong đối tượng được chọn ko ạ
  • 0

#4 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 19 September 2011 - 09:29 PM

Em xin cảm ơn anh DOan Van Ha. Cái lisp đó nó bị tắt hết Osnap nên không thể bắt điểm chính xác được. Anh có thể giữ nguyên tùy chọn Osnap như hiện hành và bổ sung thêm lựa chọn tăng giá trị các số của các Text nằm trong đối tượng được chọn ko ạ

- Srr, đã sửa lại osnap vì sơ ý để nhầm vị trí (vẫn link như cũ)
- Trong đối tượng cần copy-array chỉ có 1 text hay nhiều text, tăng theo cấp số cộng hay cấp số nhân (công sai và công bội?)? Hay đơn giản là tăng 1 đơn vị?
  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#5 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 19 September 2011 - 10:07 PM

Đây chắc đúng y/c của bạn.

;Doan Van Ha
(defun C:CA (/ dt dsdt dt1 dt2 p1 p2 sl x)
(command "undo" "be")
(setq osm (getvar "osmode"))
(princ "\nChon cac doi tuong can Copy-Array...")
(setq dsdt (acet-ss-to-list (setq dt (ssget)))
p1 (getpoint "\nDiem goc: ")
p2 (getpoint p1 "\nDiem den: ")
sl (getint "\nSo lan: ")
x 1)
(foreach n dsdt
(if (or (= "TEXT" (cdr (assoc 0 (entget n)))) (= "MTEXT" (cdr (assoc 0 (entget n)))))
(setq dt1 (ssdel n dt) dt2 n)))
(setvar "osmode" 0)
(repeat sl
(command ".copy" dt1 "" p1 (polar p1 (angle p1 p2) (* (distance p1 p2) x)))
(command ".copy" dt2 "" p1 (polar p1 (angle p1 p2) (* (distance p1 p2) x)))
(entmod (subst (cons 1 (itoa (+ (atoi (cdr (assoc 1 (entget dt2)))) x))) (assoc 1 (entget (entlast))) (entget (entlast))))
(entupd (entlast))
(setq x (1+ x)))
(command "undo" "e")
(setvar "osmode" osm)
(princ))

  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#6 matden_304

matden_304

    biết vẽ line

  • Members
  • PipPip
  • 29 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 19 September 2011 - 11:18 PM

@DVH Cái lisp mới ( có dòng Bạn muốn text tăng dần) nó chỉ chạy ngon lành với text thôi anh. Còn đối với các đối tượng khác thì nó ko copy đc. Nhờ anh ra tay thêm xíu nữa cho nó hoàn chỉnh luôn. :) Em nghĩ có lẽ là thiếu ở giải thuật

@Mod Ketxu Hồi trưa em thấy có vài bài reply có cả của anh nữa mà sao giờ nó chạy đâu mất rồi. Anh tìm lại thử ( Làm mod vất vả xíu ^^)
  • 0

#7 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 20 September 2011 - 08:40 PM

@DVH Cái lisp mới ( có dòng Bạn muốn text tăng dần) nó chỉ chạy ngon lành với text thôi anh. Còn đối với các đối tượng khác thì nó ko copy đc. Nhờ anh ra tay thêm xíu nữa cho nó hoàn chỉnh luôn. :) Em nghĩ có lẽ là thiếu ở giải thuật

@Mod Ketxu Hồi trưa em thấy có vài bài reply có cả của anh nữa mà sao giờ nó chạy đâu mất rồi. Anh tìm lại thử ( Làm mod vất vả xíu ^^)

Bạn đưa bản vẽ của bạn lên xem hè, tôi không thấy lỗi.
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#8 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5678 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 20 September 2011 - 08:56 PM

@DVH Cái lisp mới ( có dòng Bạn muốn text tăng dần) nó chỉ chạy ngon lành với text thôi anh. Còn đối với các đối tượng khác thì nó ko copy đc. Nhờ anh ra tay thêm xíu nữa cho nó hoàn chỉnh luôn. :) Em nghĩ có lẽ là thiếu ở giải thuật

@Mod Ketxu Hồi trưa em thấy có vài bài reply có cả của anh nữa mà sao giờ nó chạy đâu mất rồi. Anh tìm lại thử ( Làm mod vất vả xíu ^^)

Dữ liệu bị back up rồi :) Lisp mình viết cho bạn mình vừa phải reup lại
http://www.cadviet.c...showtopic=54635
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#9 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5678 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 20 September 2011 - 09:03 PM

@DVH Cái lisp mới ( có dòng Bạn muốn text tăng dần) nó chỉ chạy ngon lành với text thôi anh. Còn đối với các đối tượng khác thì nó ko copy đc. Nhờ anh ra tay thêm xíu nữa cho nó hoàn chỉnh luôn. :) Em nghĩ có lẽ là thiếu ở giải thuật

@Mod Ketxu Hồi trưa em thấy có vài bài reply có cả của anh nữa mà sao giờ nó chạy đâu mất rồi. Anh tìm lại thử ( Làm mod vất vả xíu ^^)

Dữ liệu bị back up rồi :) Lisp mình viết cho bạn mình vừa phải reup lại
http://www.cadviet.c...showtopic=54635

@bác ĐVH : code chạy tốt, tuy nhiên hơi tiếc ở chỗ sau vòng foreach thì chỉ còn 1 đối tượng Text duy nhất được gán là dt2, nên lisp chỉ xử lý 1 em Text (trong khi tập chọn có thể có nhiều hơn 1). Ngoài ra do bác chưa kiểm tra có hay không tồn tại dt2, nên nếu tập đối tượng của matden không có text thì dòng
(command ".copy" dt2 "" p1 (polar p1 (angle p1 p2) (* (distance p1 p2) x))) sẽ gây lỗi ^^
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#10 matden_304

matden_304

    biết vẽ line

  • Members
  • PipPip
  • 29 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 20 September 2011 - 09:03 PM

@ ĐVH ( Đàm Vĩnh Hưng :) ^^) Anh thử kiểm tra xem với cái cánh cửa trong bản vẽ này nhé, em thử mà chưa ra
http://www.cadviet.c.../3/kientruc.dwg
  • 0

#11 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 20 September 2011 - 09:07 PM

Một buổi chiều không vào CV được, lại thêm mọi bài viết đều bị undo hết, chán quá đi!
CD dạo này bị sao thế nhỉ? Mới góp ý buổi sáng thì chiều bị dính ngay!
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#12 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 20 September 2011 - 09:11 PM

Dữ liệu bị back up rồi :) Lisp mình viết cho bạn mình vừa phải reup lại
http://www.cadviet.c...showtopic=54635

@bác ĐVH : code chạy tốt, tuy nhiên hơi tiếc ở chỗ sau vòng foreach thì chỉ còn 1 đối tượng Text duy nhất được gán là dt2, nên lisp chỉ xử lý 1 em Text (trong khi tập chọn có thể có nhiều hơn 1). Ngoài ra do bác chưa kiểm tra có hay không tồn tại dt2, nên nếu tập đối tượng của matden không có text thì dòng
(command ".copy" dt2 "" p1 (polar p1 (angle p1 p2) (* (distance p1 p2) x))) sẽ gây lỗi ^^

Ket theo dõi topic này thì sẽ rõ, tôi hỏi chủ muốn gì nhưng không thấy trả lời nên tôi chỉ viết theo bản vẽ vì thấy có 1 text là số nguyên trên đó, mà chủ thấy đúng ý thì thôi vậy
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#13 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5678 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 20 September 2011 - 09:37 PM

@bác ĐVH : ^^, vậy thì cứ để vậy đi ^^
Bản vẽ matden vừa post kia, ketxu chưa down cũng có thể đoán được đến 90% là lỗi dòng ketxu đã bôi đen ^^ Hì
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#14 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 20 September 2011 - 09:44 PM

@bác ĐVH : ^^, vậy thì cứ để vậy đi ^^
Bản vẽ matden vừa post kia, ketxu chưa down cũng có thể đoán được đến 90% là lỗi dòng ketxu đã bôi đen ^^ Hì

Không xem bản vẽ cũng đoán được, vì chủ topic đề nghị copy text tăng dần, hỏi không thấy trả lời nên viết theo những gì thấy trên nó. Chứ có n text hay không có text nào thì đâu phải vấn đề lớn. Liệu chủ muốn có n text trên đó nhưng chỉ tăng dần (n-3) text thì sao? Đây chỉ viết theo kiểu thằng mù sờ voi mà, hì!
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#15 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 20 September 2011 - 09:52 PM

@ ĐVH ( Đàm Vĩnh Hưng :) ^^) Anh thử kiểm tra xem với cái cánh cửa trong bản vẽ này nhé, em thử mà chưa ra
http://www.cadviet.c.../3/kientruc.dwg

Bạn ra đề thi chưa rõ ràng nên thí sinh nhầm thì cũng thông cảm. Copy_Array các đối tượng khác *text thì không sao, nhưng khi đối tượng là *text thì bạn cần nói rõ quy luật, tăng giảm thế nào, tăng giảm tất cả *text trên đó hay chỉ 1 số...vv và vv...
Bản vẽ mới của bạn không có *text nên bị lỗi, vì tôi viết theo những gì mà tôi thấy trên bản vẽ cũ bạn đã up lên.
Thân thương!
  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#16 matden_304

matden_304

    biết vẽ line

  • Members
  • PipPip
  • 29 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 20 September 2011 - 10:50 PM

@DVH Đề của em là ntn. Anh giúp giùm em nhahttp://www.cadviet.c.../kientruc_1.dwg
Cảm ơn anh DVH ...
  • 0

#17 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 21 September 2011 - 05:14 PM

@DVH Đề của em là ntn. Anh giúp giùm em nhahttp://www.cadviet.c.../kientruc_1.dwg
Cảm ơn anh DVH ...

Tôi viết cho bạn và cho ai cần dùng với trường hợp khá tổng quát: đối tượng không phải *text thì copy-array bình thường, đối tượng là *text thì copy-array tăng lên 1 đơn vị.
Các chú ý khi dùng:
- Chỉ 1 *text được tăng dần.
- *Text có thể là số bất kỳ (int, real), có thể có tiền tố, hậu tố.
- Code hơi dài vì xét cả tiền tố rồi hậu tố, mệt nhất là số dạng real. Bạn thông cảm nhé.
Thân thương!

; Doan Van Ha CADViet.com
; Copy-Array cac doi tuong, rieng *Text co chua so thi tang dan 1 don vi, chap nhan so co tien to va hau to (chi xet 1 *Text).
(defun C:CA (/ dsdt dt dt1 dt2 p1 p2 sl x kwrd strt strp num sym)
(command "undo" "be")
(princ "\nChon cac doi tuong can Copy-Array...")
(setq dsdt (acet-ss-to-list (setq dt (ssget)))
dt1 dt
p1 (getpoint "\nDiem goc: ")
p2 (getpoint p1 "\nDiem den: ")
sl (getint "\nSo lan: ")
x 1)
(acet-sysvar-set (list "osmode" 0 "cmdecho" 0))
(foreach n dsdt
(if (or (= "TEXT" (cdr (assoc 0 (entget n)))) (= "MTEXT" (cdr (assoc 0 (entget n)))))
(setq dt1 (ssdel n dt) dt2 n)))
(if dt2
(progn
(initget "Y N")
(setq kwrd (getkword "\nBan muon Text tang dan ? [Y/<N>] "))
(setq x 1)
(repeat (1- sl)
(command ".copy" dt2 "" p1 (polar p1 (angle p1 p2) (* (distance p1 p2) x)))
(if (eq kwrd "Y")
(progn
(CHIA (cdr (assoc 1 (entget dt2))))
(entmod (subst (cons 1 (strcat strt (rtos (+ (atof num) x) 2 daup) strp)) (assoc 1 (entget (entlast))) (entget (entlast))))
(entupd (entlast))))
(setq x (1+ x)))))
(setq x 1)
(repeat (1- sl)
(command ".copy" dt1 "" p1 (polar p1 (angle p1 p2) (* (distance p1 p2) x)))
(setq x (1+ x)))
(command "undo" "e")
(acet-sysvar-restore)
(princ))
;----- Chia text lam 3 phan: tien to, num, hau to.
(defun CHIA(str / strtp)
(setq strt (PHAN str)
strp (DAO (PHAN (DAO str)))
num (ACET-STR-LR-TRIM strt (ACET-STR-LR-TRIM strp str))
daup (if (not (ACET-STR-FIND "." num)) 0 (strlen (substr num (+ 1 (strlen ".") (strlen (substr num 1 (- (ACET-STR-FIND "." num) 1)))))))))
;----- Lay 1 phan ben phai hoac trai cua num.
(defun PHAN(str / str1)
(setq str1 str num nil)
(while (and (not num) (/= str1 ""))
(if (distof (substr str1 1 1))
(setq strtp (substr str 1 (- (ACET-STR-FIND (substr str1 1 1) str) 1))
str1 "")
(setq str1 (substr str1 2))))
strtp)
;----- Dao nguoc 1 chuoi.
(defun DAO(str / str2)
(setq str2 str strn "")
(while (/= "" str2)
(setq strn (strcat (substr str2 1 1) strn))
(setq str2 (substr str2 2 (strlen str2))))
strn)

  • 5

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#18 matden_304

matden_304

    biết vẽ line

  • Members
  • PipPip
  • 29 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 21 September 2011 - 07:37 PM

@DVH Code chạy tốt. Có thể đưa code này vào thư viện cho những ai cần ( Như là đánh số thứ tự trong bảng thống kê)
Thân ái :):):)
  • 0

#19 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5678 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 21 September 2011 - 09:04 PM

Code chạy tốt :) Thanks bác ĐVH. E có chút góp ý như sau :
- Với chú ý chỉ tăng 1 text trong tập chọn => OK, tuy nhiên, nếu có nhiều text thì các text ngoài text được chọn để tăng đều bị xóa hết, nên k hay lắm
- Bác thử chạy code với 1 text có tiền tố/hậu tố có chứa số (vd a4b5) thì lại thấy tiếp vấn đề nữa ^^
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#20 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 21 September 2011 - 09:44 PM

Code chạy tốt :) Thanks bác ĐVH. E có chút góp ý như sau :
- Với chú ý chỉ tăng 1 text trong tập chọn => OK, tuy nhiên, nếu có nhiều text thì các text ngoài text được chọn để tăng đều bị xóa hết, nên k hay lắm
- Bác thử chạy code với 1 text có tiền tố/hậu tố có chứa số (vd a4b5) thì lại thấy tiếp vấn đề nữa ^^

Ket viết nhiều chắc biết kiểu viết lsp theo y/c như đề này là rất nhạy cảm! Có cái thì không tiền/hậu tố, có cái thì có tiền/hậu tố, lại có cái có cả tiền và hậu tố. Có cái là int, lại có cái là real (khổ nhất nó). Chao ôi nó đa đoan! Hì! Riêng 2 câu hỏi của Ket xin trả lời như sau:
1). Khi có nhiều txt thì biết chọn cái nào để tăng, còn nếu tăng tất cả là không thực tế lắm, thành ra chỉ chọn 1 txt thôi. Còn chặt chẽ hơn (tất nhiên sử dụng sẽ phức tạp hơn!) thì sau khi chọn dt cần phải thêm 1 bước chọn txt để tăng nữa (nhằm cho các txt khác đứng yên).
2). Chỉ viết ngang cỡ "ab5.3cdf" thôi, chứ "a4b5" thì biết chọn tăng số 4 hay số 5 đây? Hay phải thêm 1 vài bước nữa, chà!
Thân thương!
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.