Đến nội dung


Hình ảnh
* * * - - 17 Bình chọn

Hỏi về Lisp (thuật toán, ý tưởng, coding,...)


  • Please log in to reply
2848 replies to this topic

#661 VoHoan

VoHoan

    biết lệnh move

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

Đã gửi 18 April 2011 - 10:24 PM

Các bạn trên diễn đàn cho hỏi với:
1. Cú pháp lệnh trong lisp để chuyển đơn vị trong bản vẽ được không? Ví dụ từ đơn vị "inches" sang đơn vị "meters",
2. Viết code khi thực hiện lệnh vòng lặp (while hoặc repeat) mà trong đó có vòng bị lỗi thì bỏ qua vòng đó đế thựcc hiện vòng lặp tiếp theo.
  • 0

#662 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 April 2011 - 11:24 AM

Các bạn trên diễn đàn cho hỏi với:
1. Cú pháp lệnh trong lisp để chuyển đơn vị trong bản vẽ được không? Ví dụ từ đơn vị "inches" sang đơn vị "meters",
2. Viết code khi thực hiện lệnh vòng lặp (while hoặc repeat) mà trong đó có vòng bị lỗi thì bỏ qua vòng đó đế thựcc hiện vòng lặp tiếp theo.

1. Có thể sửa bằng lệnh "Options". Còn list thì:
(setvar "INSUNITSDEFSOURCE" 1)
(setvar "INSUNITSDEFTARGET" 6)
2. Đang botay.com
  • 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.


#663 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 19 April 2011 - 12:00 PM

Các bạn trên diễn đàn cho hỏi với:
......
2. Viết code khi thực hiện lệnh vòng lặp (while hoặc repeat) mà trong đó có vòng bị lỗi thì bỏ qua vòng đó đế thựcc hiện vòng lặp tiếp theo.

Bắt bệnh kiểu này, khó chẩn đoán đúng lắm. Chi bằng bạn post code của bạn lên đây, anh em sẽ tháo gỡ cho bạn.
  • 0

#664 VoHoan

VoHoan

    biết lệnh move

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

Đã gửi 20 April 2011 - 04:34 PM

1. Có thể sửa bằng lệnh "Options". Còn list thì:
(setvar "INSUNITSDEFSOURCE" 1)
(setvar "INSUNITSDEFTARGET" 6)

Mình đã chép đoạn lệnh này vào lisp rồi nhưng không thấy thay đổi gì. Vậy còn cách nào nữa không bạn hay mình đã làm sai ở đâu?

Bắt bệnh kiểu này, khó chẩn đoán đúng lắm. Chi bằng bạn post code của bạn lên đây, anh em sẽ tháo gỡ cho bạn.

Mình lấy VD như sau:
(repeat N
(lệnh 1)
(lệnh 2)
.......
(lệnh m)
)
Nếu trong quá trình chạy lisp giả sử ở vòng lặp thứ i, (lệnh 2) bị lỗi không thực hiện thì bỏ qua vòng này tiếp tục chạy vòng tiếp sau.
  • 0

#665 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 20 April 2011 - 05:08 PM

Mình đã chép đoạn lệnh này vào lisp rồi nhưng không thấy thay đổi gì. Vậy còn cách nào nữa không bạn hay mình đã làm sai ở đâu?

Mình lấy VD như sau:
(repeat N
(lệnh 1)
(lệnh 2)
.......
(lệnh m)
)
Nếu trong quá trình chạy lisp giả sử ở vòng lặp thứ i, (lệnh 2) bị lỗi không thực hiện thì bỏ qua vòng này tiếp tục chạy vòng tiếp sau.

Còn tùy thuộc "lệnh" của bạn nó là cái j nữa mà.Có lệnh cho try, có lệnh k cho try, rồi còn phu thuộc vào giá trị của nó nhận về có ảnh hưởng gì đến thằng lệnh tiếp theo k
  • 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


#666 hochoaivandot

hochoaivandot

    biết dimradius

  • Members
  • PipPipPipPipPip
  • 310 Bài viết
Điểm đánh giá: 106 (tàm tạm)

Đã gửi 25 April 2011 - 07:39 PM

Nhờ các anh giúp em code lấy list tấc cả các pattern hatch (cả predefine và userdefine)
Cảm ơn các anh!
  • 0

Dương Bá Diệp

 

www.cadonline.duyxuyen.vn 

 

Thành viên nhóm CADMAGIC

 


#667 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 25 April 2011 - 11:22 PM

Nhờ các anh giúp em code lấy list tấc cả các pattern hatch (cả predefine và userdefine)
Cảm ơn các anh!


Bạn thử đoạn này xem sao. Lấy list các pH trong 1 file

(defun lstHatch(patFile / lst line tmp)
(vl-directory-files (vl-filename-directory (findfile patFile)) "*.pat")
(setq file_open (open (findfile patFile) "r"))
(while (setq line (read-line file_open))
(setq tmp (cons line tmp)))
(close file_open)
(setq tmp (reverse tmp))
(setq lst (vl-remove-if-not '(lambda (string) (if (eq (substr string 1 1) "*") string)) tmp))
(setq lst (mapcar '(lambda (string) (substr string 2 (- (vl-string-search "," string) 1))) lst))
)
Test : (lsthatch "acadiso.pat")
  • 1

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


#668 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 11 May 2011 - 05:15 PM

Thông thường, để đọc 1 danh sách lên dialoge cần phải dùng 3 hàm. Ví dụ, muốn đọc danh sách "ds1" thì:
(start_list "ds1")
(mapcar 'add_list ds1)
(end_list)
Vậy, có cách gì tạo 1 hàm với biến toàn cục là "ds" để gom 3 hàm này lại? Ví dụ hàm đó là (GOM ds) thì:
- Khi cần đọc ds2 ta viết (GOM ds2)
- Khi cần đọc ds3 ta viết (GOM ds3)...
Bác nào biết xin chỉ giùm vớ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.


#669 hochoaivandot

hochoaivandot

    biết dimradius

  • Members
  • PipPipPipPipPip
  • 310 Bài viết
Điểm đánh giá: 106 (tàm tạm)

Đã gửi 11 May 2011 - 05:32 PM

Thông thường, để đọc 1 danh sách lên dialoge cần phải dùng 3 hàm. Ví dụ, muốn đọc danh sách "ds1" thì:
(start_list "ds1")
(mapcar 'add_list ds1)
(end_list)
Vậy, có cách gì tạo 1 hàm với biến toàn cục là "ds" để gom 3 hàm này lại? Ví dụ hàm đó là (GOM ds) thì:
- Khi cần đọc ds2 ta viết (GOM ds2)
- Khi cần đọc ds3 ta viết (GOM ds3)...
Bác nào biết xin chỉ giùm với.

Hàm sau của anh ssg được anh em Cadviet sử dụng như thư viện hàm con.

(defun set_list(MyTile MyList MyVal / j x)
(start_list MyTile)
(setq j 0)
(while (setq x (nth j MyList))
(add_list x)
(setq j (1+ j))
)
(end_list)
(set_tile MyTile MyVal)
)

  • 0

Dương Bá Diệp

 

www.cadonline.duyxuyen.vn 

 

Thành viên nhóm CADMAGIC

 


#670 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 11 May 2011 - 05:38 PM

Thông thường, để đọc 1 danh sách lên dialoge cần phải dùng 3 hàm. Ví dụ, muốn đọc danh sách "ds1" thì:
(start_list "ds1")
(mapcar 'add_list ds1)
(end_list)
Vậy, có cách gì tạo 1 hàm với biến toàn cục là "ds" để gom 3 hàm này lại? Ví dụ hàm đó là (GOM ds) thì:
- Khi cần đọc ds2 ta viết (GOM ds2)
- Khi cần đọc ds3 ta viết (GOM ds3)...
Bác nào biết xin chỉ giùm với.

Chào bạn DOANVANHA
(start_list "ds1")
(mapcar 'add_list ds1)
(end_list)

"ds1" ở dòng (start_list "ds1")là key
ds1 ở dòng (mapcar 'add_list ds1) chính là 1 List
Bạn có thể viết 1 function con
(defun GOM(key Lst)
(start_list key)
(mapcar 'add_list Lst)
(end_list)
)
;;;
- Khi cần đọc list ds2 với key là "ds2" ta viết (GOM "ds2" ds2)
  • 1

#671 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 11 May 2011 - 08:54 PM

Chào bạn DOANVANHA
(start_list "ds1")
(mapcar 'add_list ds1)
(end_list)

"ds1" ở dòng (start_list "ds1")là key
ds1 ở dòng (mapcar 'add_list ds1) chính là 1 List
Bạn có thể viết 1 function con
(defun GOM(key Lst)
(start_list key)
(mapcar 'add_list Lst)
(end_list)
)
;;;
- Khi cần đọc list ds2 với key là "ds2" ta viết (GOM "ds2" ds2)

Cám ơn bác Tue_NV! Giá mà biến được list qua key để hàm GOM chỉ còn 1 biến thì hay biết mấ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.


#672 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 11 May 2011 - 09:14 PM

Cám ơn bác Tue_NV! Giá mà biến được list qua key để hàm GOM chỉ còn 1 biến thì hay biết mấy.

Bạn có thể gom key và List đó thành 1 list mẹ.
List mẹ này có phần tử đầu tiên là key
Hàm GOM sẽ viết lại như sau :
(defun GOM(lst)
(start_list (car lst))
(mapcar 'add_list (cdr Lst))
(end_list)
)

  • 2

#673 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 11 May 2011 - 09:57 PM

Bạn có thể gom key và List đó thành 1 list mẹ.
List mẹ này có phần tử đầu tiên là key
Hàm GOM sẽ viết lại như sau :
(defun GOM(lst)
(start_list (car lst))
(mapcar 'add_list (cdr Lst))
(end_list)
)

Trò của bác hơi "đểu" nhưng... độc! Tuy nhiên, cái này áp dụng cho list mới thì tiện, nhưng list cũ thì hơi bị khổ, vì phải lôi các list này ra để add thêm phần tử đầu, mà tôi có trên mấy trăm list nên hơi bị mệt. Dù sao cũng thanks thêm 1 lần nữa.
  • 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.


#674 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 11 May 2011 - 10:15 PM

Trò của bác hơi "đểu" nhưng... độc! Tuy nhiên, cái này áp dụng cho list mới thì tiện, nhưng list cũ thì hơi bị khổ, vì phải lôi các list này ra để add thêm phần tử đầu, mà tôi có trên mấy trăm list nên hơi bị mệt. Dù sao cũng thanks thêm 1 lần nữa.

Mình viết đường hoàng, đâu có "đểu"
Bạn có thể sử dụng cái này để thêm key làm phần tử đầu trong List đã có sẵn
Cả trăm List cũng nhanh
Ví dụ như thế này :
-> Tue_NV có 3 key :
(setq a '("key1" "key2" "key3"))
Có 3 List ứng với 3 biến L1, L2, L3
(setq L1 '(1 5 6))
(setq L2 '(3 5 7))
(setq L3 '(6 4 9))

-> Gom "key1" vào L1, "key2" vào L2, "key3" vào L3 -> set cho biến b
(setq b(mapcar '(lambda(x y) (append (list x) y)) a (list L1 L2 L3)))
-> gán từng phần tử trong biến b lại cho L1; L2; L3
(mapcar 'set '(L1 L2 L3) b )

-> Kết quả nằm trong biến L1; L2 ; L3. Bạn thử xem
  • 1

#675 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 11 May 2011 - 10:37 PM

Mình viết đường hoàng, đâu có "đểu"
Bạn có thể sử dụng cái này để thêm key làm phần tử đầu trong List đã có sẵn
Cả trăm List cũng nhanh
Ví dụ như thế này :
-> Tue_NV có 3 key :
(setq a '("key1" "key2" "key3"))
Có 3 List ứng với 3 biến L1, L2, L3
(setq L1 '(1 5 6))
(setq L2 '(3 5 7))
(setq L3 '(6 4 9))

-> Gom "key1" vào L1, "key2" vào L2, "key3" vào L3 -> set cho biến b
(setq b(mapcar '(lambda(x y) (append (list x) y)) a (list L1 L2 L3)))
-> gán từng phần tử trong biến b lại cho L1; L2; L3
(mapcar 'set '(L1 L2 L3) b )

-> Kết quả nằm trong biến L1; L2 ; L3. Bạn thử xem

1. Có 2 loại đểu: đểu và "đểu". "Đểu" này là "đểu" khen mà bác!
2. Bác đã nói đúng. Tuy nhiên, chơi 2 biến sửa ít hơn 1 biến, nên thôi, đành chơi 2 biến vậy. Thanks 1 lần nữa.
  • 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.


#676 damvinhduy

damvinhduy

    biết vẽ line

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

Đã gửi 12 May 2011 - 12:16 AM

Chào các bạn. Mình có một vấn đề muốn được giúp đỡ. Trên bản vẽ của mình có rất nhiều đối tượng kiểu MTEXT ví dụ A,B,C...X,Y,Z. Bây giờ mình dùng hàm ENTSEL để chọn ra 2 đối tượng M,N bất kỳ trong số các đối tượng MTEXT trên. Sau đó dùng lệnh EXPLODE để chuyển hai đối tượng M,N về kiểu DTEXT. Bây giờ mình muốn truy xuất 2 đối tượng vừa mới phá(sau khi EXPLODE) nhưng không biết làm cách nào. Mong nhận được sự giúp đỡ của các bạn. Xin cảm ơn.
  • 0

#677 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 12 May 2011 - 03:28 AM

1. Có 2 loại đểu: đểu và "đểu". "Đểu" này là "đểu" khen mà bác!
2. Bác đã nói đúng. Tuy nhiên, chơi 2 biến sửa ít hơn 1 biến, nên thôi, đành chơi 2 biến vậy. Thanks 1 lần nữa.

Chào Doan Van Ha
Biến là do mình đặt ra. Bạn có thể viết gọn lại
Với hàm gom do Tue_NV định nghĩa ở trên.

(foreach keylst (mapcar '(lambda(x y) (append (list x) y))
'("key1" "key2" "key3");danh sach key
(list '(1 5 6) '( 3 5 7) '(6 4 9)); co the dinh nghia danh sach cac bien List
)
(GOM keylst)
)

Chào các bạn. Mình có một vấn đề muốn được giúp đỡ. Trên bản vẽ của mình có rất nhiều đối tượng kiểu MTEXT ví dụ A,B,C...X,Y,Z. Bây giờ mình dùng hàm ENTSEL để chọn ra 2 đối tượng M,N bất kỳ trong số các đối tượng MTEXT trên. Sau đó dùng lệnh EXPLODE để chuyển hai đối tượng M,N về kiểu DTEXT. Bây giờ mình muốn truy xuất 2 đối tượng vừa mới phá(sau khi EXPLODE) nhưng không biết làm cách nào. Mong nhận được sự giúp đỡ của các bạn. Xin cảm ơn.

Chào damvinhduy
Bạn sử dụng cái này
(acet-explode (ssget '((0 . "MTEXT"))))
Chọn MTEXT -> nó sẽ explode thành TEXT và trả về các Text này trong 1 tập chọn
  • 2

#678 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 12 May 2011 - 10:57 AM

[quote name='Tue_NV' date='12 May 2011 - 03:28 AM' timestamp='1305145688' post='145597']
Chào Doan Van Ha
Biến là do mình đặt ra. Bạn có thể viết gọn lại
Với hàm gom do Tue_NV định nghĩa ở trên.
[code]
Bác giúp đỡ quá tận tình, đến những 3h30 mà còn viết code trả lời! Nói tóm lại, tôi muốn như thế này:
Tôi có 1 list tên là lst (nó có thể cố định, có thể thay/thêm/loại được, và có thể ban đầu là list rỗng). Bây giờ tôi muốn có một hàm 1 biến, VD là (GOM lst) để có thể dùng nó đọc bất cứ danh sách nào. Các list này nằm tận sâu thẳm ở đâu đó ta không quan tâm mà chỉ biết tên nó là lst. Nhưng chắc để bác còn giúp người khác, chứ đến đây tôi cũng thấy tạm ổn rồ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.


#679 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1431 Bài viết
Điểm đánh giá: 1425 (rất tốt)

Đã gửi 12 May 2011 - 11:23 AM

Bác giúp đỡ quá tận tình, đến những 3h30 mà còn viết code trả lời! Nói tóm lại, tôi muốn như thế này:
Tôi có 1 list tên là lst (nó có thể cố định, có thể thay/thêm/loại được, và có thể ban đầu là list rỗng). Bây giờ tôi muốn có một hàm 1 biến, VD là (GOM lst) để có thể dùng nó đọc bất cứ danh sách nào. Các list này nằm tận sâu thẳm ở đâu đó ta không quan tâm mà chỉ biết tên nó là lst. Nhưng chắc để bác còn giúp người khác, chứ đến đây tôi cũng thấy tạm ổn rồi.

Ra ngõ gặp "Bác học" rồi.

Hiện nay Bạn có tiền, có rất nhiều tiền. :rolleyes:
"(nó có thể cố định, có thể thêm/bớt vào ngày mai, và có thể ban đầu là rỗng" :mellow: )
bạn có thể để trong ví-bóp, trong ngân hàng Thụy sĩ , .... nói chung là "nằm tận sâu thẳm ở đâu đó ta không quan tâm mà chỉ biết nó là tiền".

bạn muốn cho ai đó. :blink: (giả dụ cho tôi hay Tue_NV ...)
- bạn phải gặp nguời đó : đưa trưc tiếp
- hoặc bạn biết tài khoản ngân hàng của họ : chuyển khoản.
- thông qua các tổ chức từ thiện
....

Trở lại v/đề chính. bạn có lst, nhưng không có KEY của dialog làm sao CAD nó biết bạn gán cho "ai"?!
  • 1

#680 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 12 May 2011 - 11:35 AM

Ra ngõ gặp "Bác học" rồi.

Hiện nay Bạn có tiền, có rất nhiều tiền. :rolleyes:
"(nó có thể cố định, có thể thêm/bớt vào ngày mai, và có thể ban đầu là rỗng" :mellow: )
bạn có thể để trong ví-bóp, trong ngân hàng Thụy sĩ , .... nói chung là "nằm tận sâu thẳm ở đâu đó ta không quan tâm mà chỉ biết nó là tiền".

bạn muốn cho ai đó. :blink: (giả dụ cho tôi hay Tue_NV ...)
- bạn phải gặp nguời đó : đưa trưc tiếp
- hoặc bạn biết tài khoản ngân hàng của họ : chuyển khoản.
- thông qua các tổ chức từ thiện
....

Trở lại v/đề chính. bạn có lst, nhưng không có KEY của dialog làm sao CAD nó biết bạn gán cho "ai"?!

Đây là dòng bác Tue_NV đã viết và tôi đã thanks:
- Khi cần đọc list ds2 với key là "ds2" ta viết (GOM "ds2" ds2)
Có thể tôi nói hơi ngắn gọn, và bác thì không đọc từ đầu nên chụp mũ mà làm thơ khinh người vậy thôi. Nhưng dù sao thì thơ của bác cũng có người vỗ tay rồi nên thô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.