Roman Numerals in Java 8 » Topics » 中国软件匠艺小组
前一段在公司里组织Dojo,练的题目是罗马数字。顺便自己平时也练了几遍。
问题
把一个正整数转换成罗马数字。转换规则如下
基本符号
符号 | 数值 |
---|---|
I | 1 |
V | 5 |
X | 10 |
L | 50 |
C | 100 |
D | 500 |
M | 1000 |
符号按照数值大小排列,数值相加即为整个数字的值,如
VI = V+ I = 5 + 1 = 6
- 如果 I 出现在 V 或 X 前,表示5或10减1
- 如果 X 出现在 L 或 C 前,表示50或100减10
- 如果 C 出现在 D 或 M 前,表示500或1000减100
如 CD = C + D = -100 + 500 = 400
注意: 不能把999写作100-1 -> IC
Read full article from Roman Numerals in Java 8 » Topics » 中国软件匠艺小组
No comments:
Post a Comment