Chuyển đến nội dung
Diễn đàn CADViet
shikou

Nhờ sữa lisp tính tổng text

Các bài được khuyến nghị

Mình la thành viên mới, mình có 1 vấn đề nhờ các thành viên trong diễn đàn giúp đỡ.Mình tìm trong diễn đàn có một lisp tính tổng các text, nhung khi text có dạng ví dụ như là @230x5 va (1328.4) thi lisp không tính được và báo lỗi. mình muốn khi khi gặp dạng @2230x5 thi lips phải hiểu la 230 nhân 5, còn số (1328.4) thi phải hiểu là số 1328.4 thôi.Mình có gửi kie2m theo hình ảnh va lisp.vậy mong mọi người giúp đỡ. Mình xin cảm ơn!

đoạn code là:

(defun c:tinh()

 
  (vl-load-com)
 
  (initget 1 "+ - * /")
 
  (setq ptinh (getkword "Chon phep tinh <+ - * />: "))
 
  
 
  (cond ((= ptinh "+")  ;;; cong
 
(prompt "\nChon text de cong:")
 
(setq ss (ssget '((0 . "TEXT")))
 
      kqua 0)
 
(while (and ss (> (sslength ss) 0))
 
  (setq kqua (+ kqua (atof (cdr (assoc 1 (entget (setq ent (ssname ss 0))))))))
 
  (ssdel ent ss))
 
(princ kqua))
 
 
 
((= ptinh "*")  ;;;nhan
 
(prompt "\nChon text de nhan:")
 
(setq ss (ssget '((0 . "TEXT")))
 
      kqua 1)
 
(while (and ss (> (sslength ss) 0))
 
  (setq kqua (* kqua (atof (cdr (assoc 1 (entget (setq ent (ssname ss 0))))))))
 
  (ssdel ent ss))
 
(princ kqua))
 
 
 
((= ptinh "-")  ;;;tru
 
(setq sobitru (car (entsel "\nChon so bi tru:"))
 
      sotru (car (entsel "\nChon so tru:\n"))
 
      kqua (- (atof (cdr (assoc 1 (entget sobitru))))
 
    (atof (cdr (assoc 1 (entget sotru))))))
 
(princ kqua))
 
 
 
((= ptinh "/")  ;;;chia
 
(setq sobichia (car (entsel "\nChon so bi chia:"))
 
      sochia (car (entsel "\nChon so chia:\n"))
 
      kqua (/ (atof (cdr (assoc 1 (entget sobichia))))
 
    (atof (cdr (assoc 1 (entget sochia))))))
 
(princ kqua))
 
  )  
 
  (if (not ssle) (setq ssle 0))
 
  (setq obj (vlax-ename->vla-object (car (entsel "\nChon text de ghi ket qua:")))
 
ssle1 (getint (strcat "\nSo so le <" (itoa ssle) ">: ")))
 
  (if ssle1 (setq ssle ssle1))
 
  (vla-put-TextString obj (rtos kqua 2 ssle))  
 
  (princ)       
 
)
Chỉnh sửa theo shikou

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Hi vọng đúng ý bạn

 

(defun c:tinh (/ ent i ss sum sum1 t1 t2 txt x)
(command "undo" "be")
(setvar "cmdecho" 0)
(prompt "\n Chon cac Text de cong:")
(setq ss (ssget '((0 . "TEXT"))))

(setq i 0
sum 0
sum1 0)
(while (< i (sslength ss))
(setq ent (entget(ssname ss i))
txt (cdr(assoc 1 ent)))

(if (= (substr txt 1 1) "@")
(setq x (vl-string-search "x" txt 1)
t1 (substr txt 2 (1- x))
t2 (substr txt (+ 2 x))
sum1 (* (atof t1) (atof t2)))
(setq sum1 (atof txt))
)
(setq sum (+ sum sum1))
(setq i (1+ i))
)

(command "text" (getpoint"\nChon Diem dat Text:") 250 0 (rtos sum 2 1));;;Muon chieu cao chu bao nhieu thi thay doi 250 thanh so khac
(setvar "cmdecho" 1)
(command "undo" "end")
(princ)
)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Hi vọng đúng ý bạn

 

(defun c:tinh (/ ent i ss sum sum1 t1 t2 txt x)

(command "undo" "be")

(setvar "cmdecho" 0)

(prompt "\n Chon cac Text de cong:")

(setq ss (ssget '((0 . "TEXT"))))

 

(setq i 0

sum 0

sum1 0)

(while (< i (sslength ss))

(setq ent (entget(ssname ss i))

txt (cdr(assoc 1 ent)))

 

(if (= (substr txt 1 1) "@")

(setq x (vl-string-search "x" txt 1)

t1 (substr txt 2 (1- x))

t2 (substr txt (+ 2 x))

sum1 (* (atof t1) (atof t2)))

(setq sum1 (atof txt))

)

(setq sum (+ sum sum1))

(setq i (1+ i))

)

 

(command "text" (getpoint"\nChon Diem dat Text:") 250 0 (rtos sum 2 1));;;Muon chieu cao chu bao nhieu thi thay doi 250 thanh so khac

(setvar "cmdecho" 1)

(command "undo" "end")

(princ)

)

 

Hi vọng đúng ý bạn

 

(defun c:tinh (/ ent i ss sum sum1 t1 t2 txt x)

(command "undo" "be")

(setvar "cmdecho" 0)

(prompt "\n Chon cac Text de cong:")

(setq ss (ssget '((0 . "TEXT"))))

 

(setq i 0

sum 0

sum1 0)

(while (< i (sslength ss))

(setq ent (entget(ssname ss i))

txt (cdr(assoc 1 ent)))

 

(if (= (substr txt 1 1) "@")

(setq x (vl-string-search "x" txt 1)

t1 (substr txt 2 (1- x))

t2 (substr txt (+ 2 x))

sum1 (* (atof t1) (atof t2)))

(setq sum1 (atof txt))

)

(setq sum (+ sum sum1))

(setq i (1+ i))

)

 

(command "text" (getpoint"\nChon Diem dat Text:") 250 0 (rtos sum 2 1));;;Muon chieu cao chu bao nhieu thi thay doi 250 thanh so khac

(setvar "cmdecho" 1)

(command "undo" "end")

(princ)

)

Hề hề hề,

Hình như chưa đúng với yêu cầu của chủ thớt.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Hề hề hề,

Hình như chưa đúng với yêu cầu của chủ thớt.

Vậy sao mới đúng đây a phamthanhbinh,a giải thích thêm được ko ạ?

Em cũng mới tập tành học lisp,đi cóp nhặt từng tí nên cũng còn lơ mơ lắm

Em viết code cho chủ thớt cũng hi vọng các anh chị chỉ bảo thêm.

Thanks!

Have a nice day!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Hi vọng đúng ý bạn

 

(defun c:tinh (/ ent i ss sum sum1 t1 t2 txt x)

(command "undo" "be")

(setvar "cmdecho" 0)

(prompt "\n Chon cac Text de cong:")

(setq ss (ssget '((0 . "TEXT"))))

 

(setq i 0

sum 0

sum1 0)

(while (< i (sslength ss))

(setq ent (entget(ssname ss i))

txt (cdr(assoc 1 ent)))

 

(if (= (substr txt 1 1) "@")

(setq x (vl-string-search "x" txt 1)

t1 (substr txt 2 (1- x))

t2 (substr txt (+ 2 x))

sum1 (* (atof t1) (atof t2)))

(setq sum1 (atof txt))

)

(setq sum (+ sum sum1))

(setq i (1+ i))

)

 

(command "text" (getpoint"\nChon Diem dat Text:") 250 0 (rtos sum 2 1));;;Muon chieu cao chu bao nhieu thi thay doi 250 thanh so khac

(setvar "cmdecho" 1)

(command "undo" "end")

(princ)

)

Không được bạn ơi! vẫn báo lỗi không tính được!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Không được bạn ơi! vẫn báo lỗi không tính được!

Đây là file code nhờ mọi người sữa dùmhttp://www.cadviet.com/upfiles/4/142524_tinh_so_dang_text.lsp

và đây là file cad cần tính  http://www.cadviet.com/upfiles/4/142524_vd.dwg

mình muốn tính la:50+@230×5+80+48.4=1328.4 va (1328.4)+30=1358.4

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Vậy sao mới đúng đây a phamthanhbinh,a giải thích thêm được ko ạ?

Em cũng mới tập tành học lisp,đi cóp nhặt từng tí nên cũng còn lơ mơ lắm

Em viết code cho chủ thớt cũng hi vọng các anh chị chỉ bảo thêm.

Thanks!

Have a nice day!

Hề hề hề,

Không đúng ở chỗ chủ thớt muốn tính hổ lốn cơ chứ không phải chỉ có @.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Hề hề hề,

Không đúng ở chỗ chủ thớt muốn tính hổ lốn cơ chứ không phải chỉ có @.

Đúng rồi ạ! tức là làm sao loại được "@" va "()" là OK

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Hề hề hề,

Không đúng ở chỗ chủ thớt muốn tính hổ lốn cơ chứ không phải chỉ có @.

;; free lisp from cadviet.com

;;; this lisp was downloaded from http://www.cadviet.com/forum/topic/130751-nha-sa-a-lisp-ta-nh-ta-ng-text/

(defun c:tinh (/ ent i ss sum sum1 t1 t2 txt x)

 

(command "undo" "be")

 

(setvar "cmdecho" 0)

 

(prompt "\n Chon cac Text de cong:")

 

(setq ss (ssget '((0 . "TEXT"))))

 

 

(setq i 0

 

sum 0.0

 

sum1 nil)

 

(while (< i (sslength ss))

 

(setq ent (entget(ssname ss i))

 

txt (cdr(assoc 1 ent)))

 

(cond

((= (substr txt 1 1) "@")

 

(setq x (vl-string-search "×" txt 1)

 

t1 (substr txt 2 (1- x))

 

t2 (substr txt (+ 2 x))

 

sum1 (* (atof t1) (atof t2)))

)

((and (= (substr txt 1 1) "(")

(= (substr txt (strlen txt) 1) ")"))

 

(setq sum1 (atof (substr txt 2 (- (strlen txt) 2))))

)

 

((and (/= (substr txt 1 1) "(")

(/= (substr txt 1 1) "@"))

 

(setq sum1 (atof txt))

)

 

)

 

(setq sum (+ sum sum1))

 

(setq i (1+ i))

 

)

 

 

(command "text" (getpoint"\nChon Diem dat Text:") 120 0 (rtos sum 2 1));;;Muon chieu cao chu bao nhieu thi thay doi 120 thanh so khac

 

(setvar "cmdecho" 1)

 

(command "undo" "end")

 

(princ)

 

)

 

Như vậy chắc được a phamthanhbinh hì.hi

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Thế này thôi:

(cal (vl-string-translate "x" "*" (vl-string-translate "@" "0" "Chuoi_can_tinh")))

Anh Doan Van Ha có thể giải thích rõ hơn csai hàm (cal) với vl-string-translate ở trên được không ạ,

Em cũng mới học nên kiến thức về mấy cái hàm vl-,vlax còn yếu lắm ạ

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Anh Doan Van Ha có thể giải thích rõ hơn csai hàm (cal) với vl-string-translate ở trên được không ạ,

Em cũng mới học nên kiến thức về mấy cái hàm vl-,vlax còn yếu lắm ạ

Cái hàm dài ngoằng kia là để thay tất cả ký tự này bằng ký tự khác. Hai lần thay (@ và x) ta được 1 biểu thức toán học, kiểu như "a+b*c/d..."

Hàm Cal để tính giá trị của biểu thức đã thay xong.

(cal (vl-string-translate "x" "*" (vl-string-translate "@" "0" "50+@230x5+80+48.4")))

(cal (vl-string-translate "x" "*" (vl-string-translate "@" "0" "(1328.4)+30")))

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Cái hàm dài ngoằng kia là để thay tất cả ký tự này bằng ký tự khác. Hai lần thay (@ và x) ta được 1 biểu thức toán học, kiểu như "a+b*c/d..."

Hàm Cal để tính giá trị của biểu thức đã thay xong.

(cal (vl-string-translate "x" "*" (vl-string-translate "@" "0" "50+@230x5+80+48.4")))

(cal (vl-string-translate "x" "*" (vl-string-translate "@" "0" "(1328.4)+30")))

Em cảm ơn anh Doan Van Ha,

  • Hàm (vl-string-translate) nghĩa là replace một chuỗi thành chuỗi ký tự  khác trong chuỗi mẹ đã cung cấp

Dòng thứ 2 phải vậy mới đúng chứ anh: (cal (vl-string-translate "(" "0" (vl-string-translate "(" "0" "(1328.4)+30")))

  • hàm Cal sao trong Lisp em chạy thử ko được a hè.??Em đọc mấy cái Lisp trên mạng thấy họ thường đặt

(or cal (arxload "geomcal"))  ở đầu đoạn lisp ,theo em nghĩ chắc để load cái hàm Cal khi người dùng chưa gọi cal lần nào phải ko anh??

  • Còn mấy cái hàm trung gian để tính toán trong hàm cal (ví dụ như : 'dee(p1,p2)"...) , Anh có thể giải thích thêm hoặc có tài liệu share cho em tham khảo với ạ

Em cảm ơn!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

1). Không cần quan tâm tới cặp () vì 5+3 và (5)+3 đều cùng kết quả khi dùng cal.

2). Đúng là phải load hàm geomcal, hoặc phải dùng lệnh cal ít nhất 1 lần trước khi chạy.

3). Bạn tìm trong Help sẽ có. Cadviet đã có chỉ dẫn, tìm nhé.

Hoặc: nhấn lệnh CAL, sau đó F1, sau đó tha hồ tìm hiểu.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

1). Không cần quan tâm tới cặp () vì 5+3 và (5)+3 đều cùng kết quả khi dùng cal.

2). Đúng là phải load hàm geomcal, hoặc phải dùng lệnh cal ít nhất 1 lần trước khi chạy.

3). Bạn tìm trong Help sẽ có. Cadviet đã có chỉ dẫn, tìm nhé.

Hoặc: nhấn lệnh CAL, sau đó F1, sau đó tha hồ tìm hiểu.

vậy nhờ bạn sửa dùm cái lisp được không?,vì mình không biết phải sửa như thế nào! xin cảm ơn!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Nhờ anh Doan Van Ha  hướng dẫn nên Đã sửa lại cho bạn rồi đây
Xin lỗi chiều nay bận quá,Viết code sợ xếp la^^
Hi vọng lần này đúng ý bạn

(defun c:tinh (/ ent i ss sum sum1 txt)

(command "undo" "be")

(setvar "cmdecho" 0)
(or cal (arxload "geomcal"))

(prompt "\n Chon cac Text de cong:")

(setq ss (ssget '((0 . "TEXT"))))


(setq i 0

sum 0.0

sum1 nil
)
(while (< i (sslength ss))

(setq ent (entget (ssname ss i))

txt (cdr (assoc 1 ent))
sum1 (cal (vl-string-translate "×" "*"
(vl-string-translate "@" "0" txt))))
(setq sum (+ sum sum1))

(setq i (1+ i))

)


(command "text"
(getpoint "\nChon Diem dat Text:")
120
0
(rtos sum 2 1)
)
;;;Muon chieu cao chu bao nhieu thi thay doi 120 thanh so khac

(setvar "cmdecho" 1)

(command "undo" "end")

(princ)

)

 

P/s: Bạn xem lại bài viết #10 ở trên mình viết lúc sáng,hình như tính cũng ra đúng kết quả đó bạn^^

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Nhờ anh Doan Van Ha  hướng dẫn nên Đã sửa lại cho bạn rồi đây

Xin lỗi chiều nay bận quá,Viết code sợ xếp la^^

Hi vọng lần này đúng ý bạn

(defun c:tinh (/ ent i ss sum sum1 txt)

 

(command "undo" "be")

 

(setvar "cmdecho" 0)

(or cal (arxload "geomcal"))

 

(prompt "\n Chon cac Text de cong:")

 

(setq ss (ssget '((0 . "TEXT"))))

 

 

(setq i 0

 

sum 0.0

 

sum1 nil

)

(while (< i (sslength ss))

 

(setq ent (entget (ssname ss i))

 

txt (cdr (assoc 1 ent))

sum1 (cal (vl-string-translate "×" "*"

(vl-string-translate "@" "0" txt))))

(setq sum (+ sum sum1))

 

(setq i (1+ i))

 

)

 

 

(command "text"

(getpoint "\nChon Diem dat Text:")

120

0

(rtos sum 2 1)

)

;;;Muon chieu cao chu bao nhieu thi thay doi 120 thanh so khac

 

(setvar "cmdecho" 1)

 

(command "undo" "end")

 

(princ)

 

)

 

P/s: Bạn xem lại bài viết #10 ở trên mình viết lúc sáng,hình như tính cũng ra đúng kết quả đó bạn^^

làm phiền bạn lân nữa,mình đã dùng thử code bạn viết nhưng khi gõ lệnh "tinh" thì không được, không biết là có sai chổ nào không,bạn kiểm tra dùm mình cái,cảm ơn bạn rất nhiều!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

làm phiền bạn lân nữa,mình đã dùng thử code bạn viết nhưng khi gõ lệnh "tinh" thì không được, không biết là có sai chổ nào không,bạn kiểm tra dùm mình cái,cảm ơn bạn rất nhiều!

Chắc do lỗi forum. Bạn down lại nhé.

http://www.cadviet.com/upfiles/4/67029_tinh.zip

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Chắc do lỗi forum. Bạn down lại nhé.

http://www.cadviet.com/upfiles/4/67029_tinh.zip

Những số trong "()" thi đã OK rồi nhưng khi tính tới số có "@"  vd : 50+@230×5 thi vẫn chưa được báo lỗi:

"Error:"
"Wrong syntax of expression"
"error: bad argument type: numberp: nil"
Bạn sửa dùm mình cái!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 

Những số trong "()" thi đã OK rồi nhưng khi tính tới số có "@"  vd : 50+@230×5 thi vẫn chưa được báo lỗi:

"Error:"
"Wrong syntax of expression"
"error: bad argument type: numberp: nil"
Bạn sửa dùm mình cái!

 

Ah! mình hiểu rồi! chắc là do dấu "x" nên nó không hiểu được là dấu nhân. vì bên cty mình khi vẽ trong cad dùng dấu "x", nếu bạn sửa được thi sửa dùm mình cái còn không được thì thôi, dù sao củng cảm ơn bạn rất rất nhiều vì đã nhiệt tình giúp mình như vậy.cảm ơn nhé!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Ah! mình hiểu rồi! chắc là do dấu "x" nên nó không hiểu được là dấu nhân. vì bên cty mình khi vẽ trong cad dùng dấu "x", nếu bạn sửa được thi sửa dùm mình cái còn không được thì thôi, dù sao củng cảm ơn bạn rất rất nhiều vì đã nhiệt tình giúp mình như vậy.cảm ơn nhé!

Bạn mở Code lên và Copy dấu "x" trong Text @230x5 (trên bản vẽ) rồi paste vào dấu "x" trong code tại dòng này là được:

(vl-string-translate "×"  "*"

            (vl-string-translate "@" "0" txt)))

Load file--> dùng lại bình thường^^

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Bạn mở Code lên và Copy dấu "x" trong Text @230x5 (trên bản vẽ) rồi paste vào dấu "x" trong code tại dòng này là được:

(vl-string-translate "×"  "*"

            (vl-string-translate "@" "0" txt)))

Load file--> dùng lại bình thường^^

Mình cũng đã thử làm rồi nhưng vẫn không được! :(

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Bạn copy cả đoạn nay về và lưu lại với đuôi .slp rồi thử lại xem sao

mình test trên máy mình oki mà

 

(defun c:tinh (/ ent i ss sum sum1 txt)
 
(command "undo" "be")
 
(setvar "cmdecho" 0)
 
(or cal (arxload "geomcal"))
 
(prompt "\n Chon cac Text de cong:")
 
(setq ss (ssget '((0 . "TEXT"))))
 
(setq i 0
 
sum 0.0
 
sum1 nil
 
)
 
(while (< i (sslength ss))
 
(setq ent (entget (ssname ss i))
 
txt (cdr (assoc 1 ent))
 
sum1 (cal (vl-string-translate
"×"
"*"
 
(vl-string-translate "@" "0" txt)
)
)
)
 
(setq sum (+ sum sum1))
 
(setq i (1+ i))
 
)
;;;
;;; (alert (strcat "T\U+1ED5ng = " (rtos sum 2 1)))
 
(command "text"
 
(getpoint "\nChon Diem dat Text:")
 
50
 
0
 
(rtos sum 2 1)
 
)
 
;;;Muon chieu cao chu bao nhieu thi thay doi 120 thanh so khac
 
 
(setvar "cmdecho" 1)
 
 
(command "undo" "end")
 
 
(princ)
 
 
)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 

Bạn copy cả đoạn nay về và lưu lại với đuôi .slp rồi thử lại xem sao

mình test trên máy mình oki mà

 

(defun c:tinh (/ ent i ss sum sum1 txt)
 
(command "undo" "be")
 
(setvar "cmdecho" 0)
 
(or cal (arxload "geomcal"))
 
(prompt "\n Chon cac Text de cong:")
 
(setq ss (ssget '((0 . "TEXT"))))
 
(setq i 0
 
sum 0.0
 
sum1 nil
 
)
 
(while (< i (sslength ss))
 
(setq ent (entget (ssname ss i))
 
txt (cdr (assoc 1 ent))
 
sum1 (cal (vl-string-translate
"×"
"*"
 
(vl-string-translate "@" "0" txt)
)
)
)
 
(setq sum (+ sum sum1))
 
(setq i (1+ i))
 
)
;;;
;;; (alert (strcat "T\U+1ED5ng = " (rtos sum 2 1)))
 
(command "text"
 
(getpoint "\nChon Diem dat Text:")
 
50
 
0
 
(rtos sum 2 1)
 
)
 
;;;Muon chieu cao chu bao nhieu thi thay doi 120 thanh so khac
 
 
(setvar "cmdecho" 1)
 
 
(command "undo" "end")
 
 
(princ)
 
 
)

 

vẫn không được bạn ơi! hay là do lỗi không đúng font chữ, vì cái dấu "x" bên mình là ghi theo font tiếng nhật! mình gủi  file cad bạn test dùm xem sao!http://www.cadviet.com/upfiles/4/142524_vd_1.dwg

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay


×