代码改变世界

一些关于罗马字符的知识

2011-06-22 10:23  iocn  阅读(2122)  评论(0编辑  收藏  举报
  • I = 1
  • V = 5
  • X = 10
  • L = 50
  • C = 100
  • D = 500
  • M = 1000

下面是关于构造罗马数字的一些通用的规则的介绍:

      字符是叠加的。I 表示 1,II 表示 2,而 III 表示 3。VI 表示 6 (字面上为逐字符相加,“5 加 1”),VII 表示 7,VIII 表示 8。含十字符 (I、X、C 和 M) 至多可以重复三次。对于 4,你则需要利用下一个最大的含五字符进行减操作得到:你不能把 4 表示成 IIII,而应表示为 IV (“比 5 小 1”)。数字 40 写成 XL (比 50 小 10),41 写成 XLI,42 写成 XLII,43 写成 XLIII,而 44 写成 XLIV (比 50 小 10,然后比 5 小1)。类似地,对于数字 9,你必须利用下一个含十字符进行减操作得到:8 表示为 VIII,而 9 则表示为 IX (比 10 小 1),而不是 VIIII (因为字符 I 不能连续重复四次)。数字 90 表示为 XC,900 表示为 CM。含五字符不能重复。数字 10 常表示为X,而从来不用VV来表示。数字 100 常表示为C,也从来不表示为 LL。罗马数字一般从高位到低位书写,从左到右阅读,因此不同顺序的字符意义大不相同。DC 表示 600;而 CD 是一个完全不同的数字 (为 400,也就是比 500 小100)。CI 表示 101;而IC 甚至不是一个合法的罗马字母 (因为你不能直接从数字100减去1;这需要写成 XCIX,意思是比 100 小 10,然后加上数字 9,也就是比 10 小 1的数字)。

via:http://blog.csdn.net/oxcow/archive/2010/02/04/5288922.aspx