uniquexiaobai
3/7/2017 - 2:54 AM

将一个十进制数字转换成罗马数字

将一个十进制数字转换成罗马数字

function convert(num) {
  var digit = ["","I","II","III","IV","V","VI","VII","VIII","IX"];
  var ten = ["","X","XX","XXX","XL","L","LX","LXX","LXXX","XC"];
  var hundreds = ["", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"];
  var thousand = ["","M","MM","MMM"];

  var a = thousand[~~(num / 1000)];
  var b = hundreds[~~(num % 1000 / 100)];
  var c = ten[~~(num % 100 / 10)];
  var d = digit[num % 10];
  
  return  a + b + c + d;
}