用于将罗马数字转换为十进制数字的JavaScript算法
我们需要编写一个函数,该函数接受一串罗马数字并返回其等效的十进制(以10为底)。因此,让我们为该函数编写代码-
示例
const romanToInt = (s) => {
const legend = "IVXLCDM";
const l=[1,5,10,50,100,500,1000];
let sum=0;
while(s){
if(!!s[1] && legend.indexOf(s[0]) < legend.indexOf(s[1])){
sum += (l[legend.indexOf(s[1])] - l[legend.indexOf(s[0])]);
s = s.substring(2, s.length);
} else {
sum += l[legend.indexOf(s[0])];
s = s.substring(1, s.length);
}
}
return sum;
};
console.log(romanToInt('CLXXVIII'));
console.log(romanToInt('LXXXIX'));
console.log(romanToInt('LV'));
console.log(romanToInt('MDLV'));输出结果
控制台中的输出将为-
178 89 55 1555
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短