导航栏: 首页 评论列表

阿拉伯数字转罗马数字I,II,III,IV,X函数,上限2147483647

默认分类 2024/01/30 17:11

function arabicToRomanWithOverline(num) {
    const romanNumerals = [
        { value: 1000000000, numeral: 'Ṁ' },
        { value: 500000000, numeral: 'Ḋ' },
        { value: 100000000, numeral: 'Ċ' },
        { value: 50000000, numeral: 'Ŀ' },
        { value: 10000000, numeral: 'Ẋ' },
        { value: 5000000, numeral: 'V̇' },
        { value: 1000000, numeral: 'M̅' },
        { value: 500000, numeral: 'D̅' },
        { value: 100000, numeral: 'C̅' },
        { value: 50000, numeral: 'L̅' },
        { value: 10000, numeral: 'X̅' },
        { value: 5000, numeral: 'V̅' },
        { value: 1000, numeral: 'M' },
        { value: 900, numeral: 'CM' },
        { value: 500, numeral: 'D' },
        { value: 400, numeral: 'CD' },
        { value: 100, numeral: 'C' },
        { value: 90, numeral: 'XC' },
        { value: 50, numeral: 'L' },
        { value: 40, numeral: 'XL' },
        { value: 10, numeral: 'X' },
        { value: 9, numeral: 'IX' },
        { value: 5, numeral: 'V' },
        { value: 4, numeral: 'IV' },
        { value: 1, numeral: 'I' }
    ];

    let result = '';

    for (const pair of romanNumerals) {
        while (num >= pair.value) {
            result += pair.numeral;
            num -= pair.value;
        }
    }

    return result;
}

// 测试函数
console.log(arabicToRomanWithOverline(2147483647)); // 输出: ṀṀĊẊẊẊẊV̇M̅M̅C̅C̅C̅C̅L̅X̅X̅X̅MMMDCXLVII


>> 留言评论