Cách đọc số ra chữ tiếng Hàn

Liên hệ QC

Hai Lúa Miền Tây

❆❆❆❆❆❆❆❆
Thành viên BQT
Administrator
Tham gia
18/3/08
Bài viết
8,282
Được thích
15,783
Giới tính
Nam
Nghề nghiệp
Làm ruộng.
Hồi nào giờ em dùng add-ins đọc số ra chữ Việt, Anh nhưng hiện nay do nhu cầu công việc cần add-in đọc số ra tiếng Hàn không biết phải làm sao, do cách đọc có khác hơn với tiếng Anh và tiếng Việt nên em không thể sửa code được. Anh chị nào có code cho em với.
Em cảm ơn nhiều
 
Hồi nào giờ em dùng add-ins đọc số ra chữ Việt, Anh nhưng hiện nay do nhu cầu công việc cần add-in đọc số ra tiếng Hàn không biết phải làm sao, do cách đọc có khác hơn với tiếng Anh và tiếng Việt nên em không thể sửa code được. Anh chị nào có code cho em với.
Em cảm ơn nhiều
Cái này chắc phải viết mới chứ chưa có đâu. Mà phải nhờ ai đó biết tiếng Hàn mới viết được chứ. Lại phải có font tiếng Hàn. Chậc.
 
Cái này chắc phải viết mới chứ chưa có đâu. Mà phải nhờ ai đó biết tiếng Hàn mới viết được chứ. Lại phải có font tiếng Hàn. Chậc.
Nếu các anh chị khong có font tiếng Hàn thì viết bằng tiếng Việt cũng được em sẽ sửa lại.
Đọc từ 1->hàng nghìn thì cấu trúc nó giống như Tiếng Anh và Tiếng Việt vấn đề ở chổ là hàng chục ngàn (10.000=man và cú như vậy nhân lên)
1=il
10=il sib
100=il bek
1.000=il chơn
10.000=il man
100.000=il sib man
1.000.000=bek man
10.000.000=chơn man
100.000.000=il ơk
1.000.000.000=sib ơk
10.000.000.000=bek ơk
100.000.000.000=chơn ơk
Rất mong các anh chị giúp đỡ)
 
Lần chỉnh sửa cuối:
Nếu các anh chị khong có font tiếng Hàn thì viết bằng tiếng Việt cũng được em sẽ sửa lại.
Đọc từ 1->hàng nghìn thì cấu trúc nó giống như Tiếng Anh và Tiếng Việt vấn đề ở chổ là hàng chục ngàn (10.000=man và cú như vậy nhân lên)
Rất mong các anh chị giúp đỡ)
Có phải giống như vạn không bạn?
20.456 = Hai man bốn trăm năm mươi sáu
31.551 = Ba man một nghìn năm trăm mười lăm
Vậy 100.000 đọc là một trăm nghìn hay là mười man?
Những số lớn hơn nữa thì sao?
 
Có phải giống như vạn không bạn?
20.456 = Hai man bốn trăm năm mươi sáu
31.551 = Ba man một nghìn năm trăm mười lăm
Vậy 100.000 đọc là một trăm nghìn hay là mười man?
Những số lớn hơn nữa thì sao?
Đúng rồi anh ơi
100.000= mười man
Anh vui lòng xem bài trước em đã sửa nhé
Em cám ơn
 
Lần chỉnh sửa cuối:
Đúng rồi anh ơi
100.000= mười man
Anh vui lòng xem bài trước em đã sửa nhé
Em cám ơn
Bạn cần cho mọi người biết rõ hơn một chút nữa. Ví dụ, đọc tiếng Hàn có những trường hợp đặt biệt như
mười # mươi
mốt # một
năm # lăm
...
1.000.000 = một trăm man?
1.000.000.000.000 = một nghìn man man?
 
Lần chỉnh sửa cuối:
Bạn cần cho mọi người biết rõ hơn một chút nữa. Ví dụ, đọc tiếng Hàn có những trường hợp đặt biệt như
mười # mươi
mốt # một
năm # lăm
...
1.000.000 = một trăm man?
1.000.000.000.000 = một nghìn man man?
0=young
1=il
2=i
3=sam
4=sa
5=ô
6=yuk
7=chil
8=phal
9=ku
10=sib
11=sib il
12=sib i
...
20=i sib
30=sam sib
31=sam sib il
40=sa sib
50=ô sib
60=yuk sib
70=chil sib
80=phal sib
90=ku sib
100=bek
1000=chơn
10.000=man
100.000=sib man
...
1.000.000= Bek man=một trăm man
10.000.000=Chơn man=mười triệu
Theo cấu trúc như sau:
[jo ][ chơn ớk][bek ớk][sib ớk][ớk][chơn man][bek man][sib man][man][chơn][bek][sib]
1.2.3.4.5.6.7.8.9.1.2.3.4.
VD: 91.234=chín man một chơn hai bek ba sib sam
VD: 891.234 =tám sib chín man một chơn hai bek ba sib sam
Nói chung là nó không có gì đặc biệt cả anh ạ
 

File đính kèm

  • Book3.xls
    16.5 KB · Đọc: 90
Lần chỉnh sửa cuối:
Bạn xem thử Code này được chưa. Tôi cũng chưa nắm rõ lắm cách đọc các số không.
Ví dụ như 2001 đọc là "Hai nghìn không trăm không mươi một" hay là "Hai nghìn một"
PHP:
Function DocSo(Sotien As Currency)
Dim St, St1, e, e1, e2, e3, e4, e5, so, tam As String
Dim Dem, Hang
Dim Sotien1 As Currency

Sotien1 = Abs(Sotien)
If Sotien1 > 1E+24 Then
DocSo = "##########---S" & ChrW(7889) & " quá l" & ChrW(7899) & "n---##########"
Else
DocSo = ""
St = Format(Sotien1, "000000000000000000000000")
St1 = Format(Sotien1, "#")
Dem = Array("", "mot ", "hai ", "ba ", "bon ", "nam ", "sau ", "bay ", "tam ", "chin ") 'khong,mot,hai...
Hang = Array("", "nghin ", "tram ", "muoi ", "")
For i = 1 To 6
e = Mid(St, 1 + (i - 1) * 4, 4)
For j = 1 To 4
so = Mid(e, j, 1)
If i <> 6 And j = 4 And Len(St) - Len(St1) < i * 4 Then
DocSo = DocSo & Dem(so) & Hang(j) & "van "
ElseIf so <> 0 Then
DocSo = DocSo & Dem(so) & Hang(j)
End If
Next
Next
End If
If Sotien < 0 Then
DocSo = "Âm " & DocSo
End If
DocSo = UCase(Left(DocSo, 1)) & Trim(Mid(DocSo, 2)) & "."
End Function
 
Lần chỉnh sửa cuối:
Bạn xem thử Code này được chưa. Tôi cũng chưa nắm rõ lắm cách đọc các số không.
Ví dụ như 2001 đọc là "Hai nghìn không trăm không mươi một" hay là "Hai nghìn một"
Cám ơn anh đã giúp đỡ.

2001 Mình sẽ đọc là hai nghìn một anh ơi,
Code của anh 100.000 nó đọc thành "mot muoi van" --> cái này là "Mười vạn"
Tiếng Hàn 10.000= 1vạn(Man), sau man là ớk, anh có thể sửa lại như vậy không ?, Em có hướng dẫn trong file đính kèm. Xin lỗi em không biết cách diễn đạt. Không biết là anh có hiểu không nữa
Cám ơn anh
 

File đính kèm

  • DOC SO TIENG HAN.xls
    33.5 KB · Đọc: 172
Lần chỉnh sửa cuối:
Cám ơn anh đã giúp đỡ.

2001 Mình sẽ đọc là hai nghìn một anh ơi,
Code của anh 100.000 nó đọc thành "mot muoi van" --> cái này là "Mười vạn"
Tiếng Hàn 10.000= 1vạn(Man), sau man là ớk, anh có thể sửa lại như vậy không ?, Em có hướng dẫn trong file đính kèm. Xin lỗi em không biết cách diễn đạt. Không biết là anh có hiểu không nữa
Cám ơn anh
100.000 là "mười vạn" vậy 1.000.000 đọc là "trăm vạn" hay "một trăm vạn"
 
Bạn cho mình hỏi tí:
Cái "lẻ" trong tiếng Hàn đọc sao ? Ví dụ 109 (một trăm lẻ chín)? Hay chỉ đơn giản là "bek ku" ?
Cái "âm" trong tiếng Hàn đọc sao ? Là cho những số nhỏ hơn 0 í ?
 
Bạn cho mình hỏi tí:
Cái "lẻ" trong tiếng Hàn đọc sao ? Ví dụ 109 (một trăm lẻ chín)? Hay chỉ đơn giản là "bek ku" ?
Cái "âm" trong tiếng Hàn đọc sao ? Là cho những số nhỏ hơn 0 í ?
109 mình thường đọc là "bek ku" nhưng "il bek ku" cũng được.
Âm thì cũng thường giống tiếng Anh thôi anh à "마 이 너 스 - minus", em thường đọc thế. Em nghĩ anh cũng biết tiếng Hàn vì có lần em thấy anh để chữ dưới avatar của anh là excel solution. Rất mong anh góp ý.
Cám ơn anh
 
Bạn cho mình hỏi tí:
Cái "lẻ" trong tiếng Hàn đọc sao ? Ví dụ 109 (một trăm lẻ chín)? Hay chỉ đơn giản là "bek ku" ?
Cái "âm" trong tiếng Hàn đọc sao ? Là cho những số nhỏ hơn 0 í ?
Hình như không có "lẻ"
2001 Mình sẽ đọc là hai nghìn một anh ơi
@: domfootwear
Chưa hiểu lắm chỗ chữ đen chữ đỏ của bạn.
1.000.000.000 đọc là "sib ớk" vậy 1.000.000.001 đọc là "sib ớk il" hay là sao
 
Hình như không có "lẻ"

@: domfootwear
Chưa hiểu lắm chỗ chữ đen chữ đỏ của bạn.
1.000.000.000 đọc là "sib ớk" vậy 1.000.000.001 đọc là "sib ớk il" hay là sao
Đúng rồi anh ơi, không có đọc là lẻ.
1.000.000.001 đọc là "sib ớk il"
Cám ơn anh
 
PHP:
Function DocSo(Sotien As Currency)
Dim St, St1, e, e1, e2, e3, e4, e5, so, tam As String
Dim Dem, Hang, Cap
Dim Sotien1 As Currency

Sotien1 = Abs(Sotien)
If Sotien1 > 1E+24 Then
DocSo = "##########---S" & ChrW(7889) & " qua l" & ChrW(7899) & "n---##########"
Else
DocSo = ""
St = Format(Sotien1, "000000000000000000000000")
St1 = Format(Sotien1, "#")
Dem = Array("", "mot ", "hai ", "ba ", "bon ", "nam ", "sau ", "bay ", "tam ", "chin ")
Hang = Array("", "nghin ", "tram ", "muoi ", "")
Cap = Array("", "", "", "jo ", "ok ", "man ", "")
For i = 1 To 6
e = Mid(St, 1 + (i - 1) * 4, 4)
For j = 1 To 4
so = Mid(e, j, 1)
If j = 4 And Len(St) - Len(St1) < i * 4 Then
    If e <> "0000" Then
    DocSo = DocSo & Dem(so) & Hang(j) & Cap(i)
    Else
    DocSo = DocSo & Dem(so) & Hang(j)
    End If
ElseIf so = 1 And j = 3 Then
DocSo = DocSo & Hang(j)
ElseIf so <> 0 Then
DocSo = DocSo & Dem(so) & Hang(j)
End If
Next
Next
End If
If Sotien < 0 Then
DocSo = "Am " & DocSo
End If
DocSo = UCase(Left(DocSo, 1)) & Trim(Mid(DocSo, 2)) & "."
End Function
Bạn thử Code này thử được chưa. Tạm thời tôi còn để tiếng Việt, nếu ok thì chuyển ngôn ngữ lại.
Àh! Những hàng trên hàng jo thì đọc như thế nào. Ví dụ 10.000 jo thì đọc ra sao?
 
Bạn thử Code này thử được chưa. Tạm thời tôi còn để tiếng Việt, nếu ok thì chuyển ngôn ngữ lại.
Àh! Những hàng trên hàng jo thì đọc như thế nào. Ví dụ 10.000 jo thì đọc ra sao?
Cám ơn anh, sau "jo" thì mình đọc là "kyouing"
Code của anh được rồi, nếu thêm được sau "jo" thì wá hay :-=
Anh xem lại hướng dẫn và kết quả làm việc của anh trong file đính kèm nhé.
 

File đính kèm

  • DOC SO TIENG HAN.xls
    35 KB · Đọc: 29
Cám ơn anh, sau "jo" thì mình đọc là "kyouing"
Code của anh được rồi, nếu thêm được sau "jo" thì wá hay :-=
Anh xem lại hướng dẫn và kết quả làm việc của anh trong file đính kèm nhé.
Có biết đọc đâu mà xem !$@!!.
Tôi sửa lại một chút. Nếu Sotien = "" thì đọc là "Young.", thêm kyouing
PHP:
Function DocSo(Sotien As Currency)
Dim St, St1, e, e1, e2, e3, e4, e5, so, tam As String
Dim Dem, Hang, Cap
Dim Sotien1 As Currency

Sotien1 = Abs(Sotien)
If Sotien1 > 1E+24 Then
DocSo = "##########---S" & ChrW(7889) & " qua l" & ChrW(7899) & "n---##########"
ElseIf Sotien1 = 0 Then
DocSo = "Young"
Else
DocSo = ""
St = Format(Sotien1, "000000000000000000000000")
St1 = Format(Sotien1, "#")
Dem = Array("", "il ", "i ", "sam ", "sa ", "o ", "duk ", "chil ", "phal ", "ku ")
Hang = Array("", "chon ", "bek ", "sib ", "")
Cap = Array("", "", "kyouing ", "jo ", "ok ", "man ", "")   '####Thêm các cấp cao hơn ở đây####
For i = 1 To 6
e = Mid(St, 1 + (i - 1) * 4, 4)
For j = 1 To 4
so = Mid(e, j, 1)
If j = 4 And Len(St) - Len(St1) < i * 4 Then
    If e <> "0000" Then
    DocSo = DocSo & Dem(so) & Hang(j) & Cap(i)
    Else
    DocSo = DocSo & Dem(so) & Hang(j)
    End If
ElseIf so = 1 And j = 3 Then
DocSo = DocSo & Hang(j)
ElseIf so <> 0 Then
DocSo = DocSo & Dem(so) & Hang(j)
End If
Next
Next
End If
If Sotien < 0 Then
DocSo = "Minus " & DocSo
End If
DocSo = UCase(Left(DocSo, 1)) & Trim(Mid(DocSo, 2)) & "."
End Function
Bạn có thể thêm các cấp tiếp theo trên kyouing bằng cách thêm vào chỗ dòng tôi đánh dấu. Nếu nhiều hơn nữa thì mở rộng ra.
 
Lần chỉnh sửa cuối:
Trước đây, đã có lần mình lợi dụng hàm này để làm hàm đọc chữ tiếng Hoa nhưng rất tiếc là mình không sao viết code trả về chữ Hoa (Mã Unicode tích hợp sẵn trong wind. XP) nên bỏ dở. Mình nhớ, cái khác biệt của cách đọc số chữ chuẩn Âu-Mỹ và Á đông:
Âu-Mỹ: 000,000,000 Đọc nhóm 3 số (Ngàn-Triệu -Tỷ....)
Á đông: 000,0000,0000 Đọc nhóm 4 số ( Vạn-Ức...)
Mình không rõ tiếng Hàn đọc số có ảnh hưởng bởi quy luật này không. Nếu có thì hàm trên phải thay đổi cơ bản mới dùng được nhất là nhóm số và ngắt câu.
Mong thông cảm về sự chưa chuẩn xác nhé.
 
Trước đây, đã có lần mình lợi dụng hàm này để làm hàm đọc chữ tiếng Hoa nhưng rất tiếc là mình không sao viết code trả về chữ Hoa (Mã Unicode tích hợp sẵn trong wind. XP) nên bỏ dở. Mình nhớ, cái khác biệt của cách đọc số chữ chuẩn Âu-Mỹ và Á đông:
Âu-Mỹ: 000,000,000 Đọc nhóm 3 số (Ngàn-Triệu -Tỷ....)
Á đông: 000,0000,0000 Đọc nhóm 4 số ( Vạn-Ức...)
Mình không rõ tiếng Hàn đọc số có ảnh hưởng bởi quy luật này không. Nếu có thì hàm trên phải thay đổi cơ bản mới dùng được nhất là nhóm số và ngắt câu.
Mong thông cảm về sự chưa chuẩn xác nhé.
Anh nói đúng code trên của anh huuthang_bd cũng đã theo qui luật Á đông như anh đã đề cập, mình có thể sử dụng được. Tuy nhiên nếu theo như ý anh code trên thêm vào dấu ngắt câu nữa là hoàn hảo rồi phải không anh huuthang_bd

Hình như kyouing không chạy được anh ơi.
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom