编辑
2026-04-01
undefined
00

目录

需求
代码实现

需求

把传入的数字转为罗马数字,所有罗马数字答案都应该大写。

罗马数字由7个基本字符组成: IVXLCDMV̅15105010050010005000

代码实现

function convertToRoman(num) { let romanArr = [] const romanObj = { 0: ['', 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX'], 1: ['', 'X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC'], 2: ['', 'C', 'CC', 'CCC', 'CD', 'D', 'DC', 'DCC', 'DCCC', 'CM'], 3: ['', 'M', 'MM', 'MMM', 'I̅V̅', 'V̅', 'V̅I̅', 'V̅I̅I̅', 'V̅I̅I̅I̅', 'I̅X̅'], } const numArr = num .toString() .split('') .map((item) => parseInt(item)) let m = numArr.length - 1 for (let n = m; n >= 0; n--) { romanArr.push(romanObj[n][numArr[m - n]]) } return romanArr.join('') }

本文作者:a

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!