让我们来写罗马数字吧!

罗马数字是个非常古老的数字,比阿拉伯数字的发明早了2000年。可惜英年早逝,不再辉煌。虽然偶尔还能看到她的身影,但也往往仅限于12以内。现在让我们来学习一下如何书写任意大小的罗马数字吧!

罗马数字只有7个,分别是I(1)、V(5)、X(10)、L(50)、C(100)、D(500)和M(1000)。

按照如下规则组合,即可形成任意大小的数字。(规则摘自维基百科。)

重复数次:一个罗马数字重复几次,就表示这个数的几倍。

右加左减:在较大的罗马数字的右边记上较小的罗马数字,表示大数字加小数字。
在较大的罗马数字的左边记上较小的罗马数字,表示大数字减小数字。
左减的数字有限制,仅限于I、X、C。比如45不可以写成VL,只能是XLV。
但是,左减时不可跨越一个位数。比如,99不可以用IC表示,而是用XCIX表示。
左减数字必须为一位,比如8写成VIII,而非IIX。
右加数字不可连续超过三位,比如14写成XIV,而非XIIII。(见下方“数字限制”一项。)

加线乘千:在罗马数字的上方加一条横线或加下标M,表示将这个数乘以1000,即是原数的1000倍。同理,如果上方有两条横线,即是原数的1000,000倍。

数字限制:同一数字最多只能连续出现三次,如40不可表示为XXXX,而要表示为XL。
例外:由于IV是古罗马神话主神朱庇特(即IVPITER,古罗马字母里没有J和U)的首字,为了避讳,有时用IIII代替IV。

其它:罗马数字中没有0,没有进位制的概念。一般认为罗马数字只用来记数,而不作演算。

要想会用罗马数字,需要与常用的进位制记数法区别开。我们用的阿拉伯数字是10进制的,从右向左每一位数字代表的值增大10倍。而罗马数字没有进位制,无论写在哪个位置,都代表相同的值。从另一个角度理解,阿拉伯数字的值是每一位数乘以放大系数再相加。而罗马数字的值是每一位直接相加或相减。唯一比较难理解的就是哪一位相减哪一位相加。

比如MMCMXCIV这个数,按照规则第一条,MM表示2000,接下来确定右边CMXCIV的值。这时候要从中间往两边看,先找到最大的数字M,M左侧的数是要减去的数,右侧的数是要加上的数。左侧是100,而右侧是XCIV。再从XCIV中找到最大的数字C,左侧是X,需要减去10,右侧是IV,需要加上4,于是XCIV的值是94。代入到前面的CMXCIV,应该等于1000减100加94,等于994。再加上前面的2000,最后的结果是2994。

从这个例子应该可以发现一些规律,整块的数一定放在最左边,右边是零散的数的组合。每一块组合起来的数都应该从中间往两边看,右边仍然可能是一个组合的数,那就再从它的中间往两边看,如此递归下去。

下面这几个数,你能写出对应的阿拉伯数字吗?

XCIII
MDCLXVI
MMMCMXCIX

下面这几个数,你能写出对应的罗马数字吗?

41
99
495

参考资料

罗马数字 维基百科
罗马数字 百度百科
在线罗马-阿拉伯数字转换计算器

你可能感兴趣的:(让我们来写罗马数字吧!)