FCC JavaScript 題二:羅馬數字轉換器
阿新 • • 發佈:2020-07-13
將給定數字轉換為羅馬數字。
所有羅馬數字答案均應以大寫形式提供。
關於羅馬數字的解釋詳情請看連結。
程式碼:
function convertToRoman(num) { var map = new Map([ [0, ''], [1, 'I'], [2, 'II'], [3, 'III'], [4, 'IV'], [5, 'V'], [6, 'VI'], [7, 'VII'], [8, 'VIII'], [9, 'IX'], [10, 'X'], [20, 'XX'], [30, 'XXX'], [40, 'XL'], [50, 'L'], [60, 'LX'], [70, 'LXX'], [80, 'LXXX'], [90, 'XC'], [100, 'C'], [200, 'CC'], [300, 'CCC'], [400, 'CD'], [500, 'D'], [600, 'DC'], [700, 'DCC'], [800, 'DCCC'], [900, 'CM'] ]); var a = Math.floor(num / 1000); var b = Math.floor((num % 1000) / 100)*100; var c = Math.floor((num % 100) / 10)*10; var d = num % 10; var tho = ''; var han = map.get(b); var ten = map.get(c); var bit = map.get(d); while (a > 0) { tho += 'M'; a--; } return tho + han + ten + bit; }