首页 > 编程语言 > 详细

FCC JavaScript 题二:罗马数字转换器

时间:2020-07-13 12:05:37      阅读:84      评论:0      收藏:0      [点我收藏+]

将给定数字转换为罗马数字。

所有罗马数字答案均应以大写形式提供。

关于罗马数字的解释详情请看链接。

技术分享图片

技术分享图片

代码:

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;
}

FCC JavaScript 题二:罗马数字转换器

原文:https://www.cnblogs.com/arduka/p/13292000.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!