10/10/2018, 00:12

Mã nguồn đọc số tiền thành chữ đây...

Mình vừa mới sưu tầm được mã nguồn này nên share cho các a e ngâm cứu

Viết bằng asp

Code:

<%
Private Function sotram2chu(socandoi) 'As String
' Khai báo dữ liệu
Dim chuso(11) 'As String
Dim shangchuc, shangtram, shangdonvi
Dim str 'As String
chuso(1) = "một"
chuso(2) = "hai"
chuso(3) = "ba"
chuso(4) = "bốn"
chuso(5) = "năm"
chuso(6) = "sáu"
chuso(7) = "bảy"
chuso(8) = "tám"
chuso(9) = "chín"
str = ""
' Kiểm tra số cần đổi có hợp lệ không
If socandoi >= 1000 Then
sotram2chu = "???"
Exit Function
End If
'Xác định 3 ký số miêu tả hàng trăm, hàng chục & đơn vị
shangtram = socandoi 100
socandoi = socandoi Mod 100
shangchuc = socandoi 10
shangdonvi = socandoi Mod 10
If shangtram >= 1 Then
str = chuso(shangtram) & " trăm"
End If
If shangchuc >= 2 Then
str = str & " " & chuso(shangchuc) & " mươi"
ElseIf shangchuc = 1 Then
str = str & " mười"
End If
If shangdonvi = 0 Then
sotram2chu = str
Exit Function
End If
If shangchuc = 0 Then
If shangtram <> 0 Then
str = str & " lẻ " & chuso(shangdonvi)
Else
str = str & " " & chuso(shangdonvi)
End If
sotram2chu = str
Exit Function
End If
If shangchuc = 1 Then
If shangdonvi <> 5 Then
str = str & " " & chuso(shangdonvi)
Else
str = str & " lăm"
End If
sotram2chu = str
Exit Function
End If
If shangdonvi = 1 Then
str = str + " mốt"
ElseIf shangdonvi = 5 Then
str = str + " lăm"
Else
str = str + " " + chuso(shangdonvi)
End If
sotram2chu = str
End Function

'------------------------------------
' Hàm đổi 1 số nguyên bất kỳ thành chuỗi phát âm tương ứng
'------------------------------------
Private Function so2chu(socandoi)
Dim idx 'As Integer
Dim ba_kyso 'As Integer
Dim str, str_tram 'As String
Dim tu_ngan_cach 'As String
Dim chu_cach(5) 'As String
chu_cach(1) = "tỷ"
chu_cach(2) = "ngàn"
chu_cach(3) = "triệu"
idx = 0 ' vi tri dau cham phan cach tung 3 ky so
str = ""
str_tram = ""
While socandoi <> 0
ba_kyso = socandoi Mod 1000
socandoi = socandoi 1000
str_tram = sotram2chu(ba_kyso) 'nen bo cac khoang trong dan dau
If idx = 0 Then ' vi tri don vi
str = str_tram
ElseIf Len(str_tram) <> 0 Then 'vi tri ngan, trieu, ty
tu_ngan_cach = chu_cach((idx Mod 3) + 1)
str = str_tram + " " + tu_ngan_cach + " " + str
ElseIf (idx Mod 3) = 0 Then
str = "tỷ " + str
End If
idx = idx + 1
Wend
so2chu = str
End Function
%>

Tạo file test.asp để gọi hàm trên

<!--#include file="function.asp"-->
<%
numbers = Request.Form("txtnumber")
if numbers <> "" then
Response.Write(so2chu(numbers))
end if
%>
<form action="test.asp" method="post" name="form1">
<input name="txtnumber" type="text"><input name="btnChange" type="submit" value="Change">
</form>


NẾU THẤY HAY HAY THÌ THANKS ĐỂ ỦNG HỘ NHÉ ........

:d :d :d :d :d :d :d :d :d :d :d :d :d
huonghx viết 02:16 ngày 10/10/2018
cũng hay nhưng hơi dài, bạn dùng vòng lặp rồi xác định phần tử tồi đọc thì đễ hơn là cách này
zoejoe viết 02:13 ngày 10/10/2018
Hì, với PHP thì có thể đọc sô thành chữ rồi thêm chữ đồng sau lưng
tanky viết 02:13 ngày 10/10/2018
Được gửi bởi zoejoe
Hì, với PHP thì có thể đọc sô thành chữ rồi thêm chữ đồng sau lưng
Pác hâm mộ PHP gớm nhỉ, bữa nào chỉ em vài chiêu nhé
awasjsc viết 02:18 ngày 10/10/2018
Mình có mã nguồn trên C# đây

http://coder.awas.vn/downloads.ashx?...c24a98917e47d6
Bài liên quan
0