Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@ndthanh
Created March 19, 2017 20:01
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ndthanh/4d2ca0a24d5bc974d501e6e4397de9a6 to your computer and use it in GitHub Desktop.
Save ndthanh/4d2ca0a24d5bc974d501e6e4397de9a6 to your computer and use it in GitHub Desktop.
// code by: Thanh ND
// Copy as you wish. No attribution required.
var mangso = ['không', 'một', 'hai', 'ba', 'bốn', 'năm', 'sáu', 'bảy', 'tám', 'chín'];
function dochangchuc(so, daydu) {
var chuoi = "";
chuc = Math.floor(so / 10);
donvi = so % 10;
if (chuc > 1) {
chuoi = " " + mangso[chuc] + " mươi";
if (donvi == 1) {
chuoi += " mốt";
}
} else if (chuc == 1) {
chuoi = " mười";
if (donvi == 1) {
chuoi += " một";
}
} else if (daydu && donvi > 0) {
chuoi = " lẻ";
}
if (donvi == 5 && chuc >= 1) {
chuoi += " lăm";
} else if (donvi > 1 || (donvi == 1 && chuc == 0)) {
chuoi += " " + mangso[donvi];
}
return chuoi;
}
function docblock(so, daydu) {
var chuoi = "";
tram = Math.floor(so / 100);
so = so % 100;
if (daydu || tram > 0) {
chuoi = " " + mangso[tram] + " trăm";
chuoi += dochangchuc(so, true);
} else {
chuoi = dochangchuc(so, false);
}
return chuoi;
}
function dochangtrieu(so, daydu) {
var chuoi = "";
trieu = Math.floor(so / 1000000);
so = so % 1000000;
if (trieu > 0) {
chuoi = docblock(trieu, daydu) + " triệu";
daydu = true;
}
nghin = Math.floor(so / 1000);
so = so % 1000;
if (nghin > 0) {
chuoi += docblock(nghin, daydu) + " nghìn";
daydu = true;
}
if (so > 0) {
chuoi += docblock(so, daydu);
}
return chuoi;
}
function docso(so) {
if (so == 0) return mangso[0];
var chuoi = "",
hauto = "";
do {
ty = so % 1000000000;
so = Math.floor(so / 1000000000);
if (so > 0) {
chuoi = dochangtrieu(ty, true) + hauto + chuoi;
} else {
chuoi = dochangtrieu(ty, false) + hauto + chuoi;
}
hauto = " tỷ";
} while (so > 0);
return chuoi;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment