zoukankan      html  css  js  c++  java
  • javascript-数字转罗马数字

    阿拉伯数字与罗马数字转换

    罗马数字表示

    XXI, 21

    个位数举例
    I, 1 】II, 2】 III, 3】 IV, 4 】V, 5 】VI, 6】 VII, 7】 VIII,8 】IX, 9

    ·十位数举例
    X, 10】 XI, 11 】XII, 12】 XIII, 13】 XIV, 14】 XV, 15 】XVI, 16 】XVII, 17 】XVIII, 18】 XIX, 19】 XX, 20】 XXI, 21 】XXII, 22 】XXIX, 29】 XXX, 30】 XXXIV, 34】 XXXV, 35 】XXXIX, 39】 XL, 40】 L, 50 】LI, 51】 LV, 55】 LX, 60】 LXV, 65】 LXXX, 80】 XC, 90 】XCIII, 93】 XCV, 95 】XCVIII, 98】 XCIX, 99 】

    ·百位数举例
    C, 100】 CC, 200 】CCC, 300 】CD, 400】 D, 500 】DC,600 】DCC, 700】 DCCC, 800 】CM, 900】 CMXCIX,999】

    ·千位数举例
    M, 1000】 MC, 1100 】MCD, 1400 】MD, 1500 】MDC, 1600 】MDCLXVI, 1666】 MDCCCLXXXVIII, 1888 】MDCCCXCIX, 1899 】MCM, 1900 】MCMLXXVI, 1976】 MCMLXXXIV, 1984】 MCMXC, 1990 】MM, 2000 】MMMCMXCIX, 3999】

    ·千位数以上举例
    -----
    CLXXX DCL, 183650】

    ====== -----
    CXXXIV CMXLV DLXXXIV, 134945584】

    js代码

    function convert(num) {
        var ans = "";
        var k = Math.floor(num / 1000);
        var h = Math.floor((num % 1000) / 100);
        var t = Math.floor((num % 100) / 10);
        var o = num % 10;
        var one = ['I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX'];
        var ten = ['X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC'];
        var hundred = ['C', 'CC', 'CCC', 'CD', 'D', 'DC', 'DCC', 'DCCC', 'CM']
        var thousand = 'M';
        for (var i = 0; i < k; i++) {
            ans += thousand;
        }
        if (h)
            ans += hundred[h - 1];
        if (t)
            ans += ten[t - 1];
        if (o)
            ans += one[o - 1];
        return ans;
    }

    代码转载自https://www.cnblogs.com/angle-qqs/p/8245626.html

  • 相关阅读:
    MonoDev 冷门而好用的功能
    Android Runtime
    bat调用bat的一个巨坑
    AssetBundles
    赢家不会告诉你的事
    防止过度工程
    如果你不肯向这个世界投降
    《我的互联网方法论》
    Notepad++ HTML格式化
    Python 包的相对导入讲解
  • 原文地址:https://www.cnblogs.com/wwjchina/p/9488427.html
Copyright © 2011-2022 走看看