今天再看罗马数字,才突然发现其完全是一种不同寻常的计数方法。我们平常用的是进制计数法(二进制、十进制等),而罗马数字完全不同。简单列几个罗马数字:
- 1 => I
- 2 => II
- 5 => V
- 6 => VI
- 10 => X
- 50 => L
- 100 => C
- 500 => D
- 1000 => M
有什么发现, 最直接的, 罗马数字的值就是将所有相加,完事.
罗马数字中没有0
这是为啥呢?其实归功于罗马数字特有的计数方式,再进制计数法中0是做什么用的?占位。比如数字100中的0表示什么意思:1个100,0个10,0个1。0在其中仅仅表示此位空。而罗马数字因为其计数性质,数字表示累加的结果,明显不需要占位符。
X、L这些数有什么用
既然完全累加,又为什么5表示为V,10表示为X,全都用I表示不就好了么。
举个例子,比较 IIIIII 和 IIIII 哪个较大?VI 和 V 哪个较大?嗯,明白了。而且数字也变短了。科学计数法:10^6 和10^7也是同样的道理。这就有点像我们写程序时的抽象
罗马数字的运算
罗马数字的运算也很简单,完全没有进位这些问题。
加法就是将两个数字并排写就行,有点像取并集
减法就是取出其中数字的部分,有点像取交集
乘法和除法就是加减法,不说了
之前一定是我的思想被禁锢了,没想到啊。既然除了进制计数,还存在其他计数方法,那一定除了罗马数字还有其他的计数方式,只是我没有发现或没有想到。厉害!!!