function convert(arabic){
var alpha = [ 'I', 'V', 'X', 'L', 'C', 'D', 'M' ], roman = "", bit = 0;
while (arabic > 0){
var tempnum = arabic % 10;
switch (tempnum){
case 3:{
roman = alpha[bit] + roman;
tempnum--;
}
case 2:{
roman = alpha[bit] + roman;
tempnum--;
}
case 1:{
roman = alpha[bit] + roman;
break;
}
case 4:{
roman = alpha[bit + 1] + roman;
roman = alpha[bit] + roman;
break;
}
case 8:{
roman = alpha[bit] + roman;
tempnum--;
}
case 7:{
roman = alpha[bit] + roman;
tempnum--;
}
case 6:{
roman = alpha[bit] + roman;
tempnum--;
}
case 5:{
roman = alpha[bit + 1] + roman;
break;
}
case 9:{
roman = alpha[bit + 2] + roman;
roman = alpha[bit] + roman;
break;
}
default:{
break;
}
}
bit += 2;
arabic = Math.floor(arabic / 10);
}
return roman;
}
convert(3999);
罗马数字转换
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 罗马数字的表示方式 I = 1V = 5X = 10L = 50C = 100D = 500M = 1000 罗...
- 问题: 将给定的数字转换成罗马数字。 所有返回的罗马数字都应该是大写形式。 代码: function conver...
- 昨日,在 FCC 平台整整用了两三小时,才刷出一道 JS 算法题,回首而看,最终的代码也就那么多行,记录过程,写文...