羅馬數字

羅馬數字

羅馬數字是歐洲在阿拉伯數字(實際上是印度數字)傳入之前使用的一種數碼,現在套用較少。它的產生晚於中國甲骨文中的數碼,更晚於埃及人的十進制數字。但是,它的產生標誌著一種古代文明的進步。只是沒有數字0。

2015年7月,義大利羅馬表示將放棄使用羅馬數字,將街道指示牌、官方檔案改成義大利文寫法。

基本介紹

  • 中文名:羅馬數字
  • 外文名:Roman numerals
  • 讀音:luó mǎ shù zì
  • 起源羅馬
  • 主要套用:鐘錶計數,章節分類,元素周期表
  • 國家義大利
歷史起源,發展變化,零,常見用途,記數方法,組數規則,對照舉例,C++代碼實現,記錄改動,發展前景,

歷史起源

羅馬數字比阿拉伯數字早 2000 多年,起源於古羅馬
古羅馬人最常用的表示 4 的方法是 IIII,所以一直以來,IV 的設計風格經常遭到“正統論者”的強烈抗議。喬治敦大學古典文獻學教授兼教務長詹姆斯·奧東奈爾說,儘管古羅馬人有時為了節省空間會把 4 寫作 IV,但這種簡寫直到中世紀才流行起來,事實上這種寫法並不正規。有些鐘錶專家還提出一種理論:古羅馬人用 IV 作為眾神之王朱庇特名字的縮寫(在古典拉丁文中,J 和 I 同為 I,U 和 V 同為 V,因此 IV 即 JU,朱庇特 Jupiter 的簡寫),因此,他們不希望神的名字看上去像個數字,也就是“避諱”。

發展變化

羅馬數字是阿拉伯數字傳入之前使用的一種數碼。羅馬數字採用七個羅馬字母作數字、即Ⅰ(1)、X(10)、C(100)、M(1000)、V(5)、L(50)、D(500)。記數的方法:
  1. 相同的數字連寫,所表示的數等於這些數字相加得到的數,如 Ⅲ=3;
  2. 小的數字在大的數字的右邊,所表示的數等於這些數字相加得到的數,如 Ⅷ=8、Ⅻ=12;
  3. 小的數字(限於 Ⅰ、X 和 C)在大的數字的左邊,所表示的數等於大數減小數得到的數,如 Ⅳ=4、Ⅸ=9;
  4. 在一個數的上面畫一條橫線,表示這個數增值 1,000 倍,如
=5000。
羅馬數字的組數規則,有幾條須注意掌握。用羅馬數字記較大的數非常麻煩,所以已不常用了。在中文出版物中,羅馬數字主要用於某些代碼,如產品型號等。計算機 ASCII 碼收錄有合體的羅馬數字 1~12。
用羅馬數字表示數的基,該方法一般是把若干個羅馬數字寫成一列,它表示的數等於各個數字所表示的數相加的和。但是也有例外,當符號 I、X 或 C 位於大數的後面時就作為加數;位於大數的前面就作為減數。
例如:Ⅲ=3、Ⅳ=4、Ⅵ=6、XIX=19、XX=20、XLV=45、MCMLXXX=1980。羅馬數字因書寫繁難,所以,後人很少採用。21 世紀,有的鐘表表面仍有用它表示時數的。此外,在書稿章節及科學分類時也有採用羅馬數字的。
21 世紀,羅馬數字已是一種套用較少的一種的數量表示方式。它的產生晚於中國甲骨文中的數碼,更晚於埃及人的十進位數字。但是,它的產生標誌著一種古代文明的進步。
大約在兩千五百年前,羅馬人還處在文化發展的初期,當時他們用手指作為計算工具。為了表示一、二、三、四個物體,就分別伸出一、二、三、四個手指;表示五個物體就伸出一隻手;表示十個物體就伸出兩隻手。這種習慣人類一直沿用到今天。人們在交談中,往往就是運用這樣的手勢來表示數字的。
當時,羅馬人為了記錄這些數字,便在羊皮上畫出 Ⅰ、Ⅱ、Ⅲ 來代替手指的數;要表示一隻手時,就寫成“Ⅴ”形,表示大指與食指張開的形狀;表示兩隻手時,就畫成“ⅤⅤ”形,後來又寫成一隻手向上、一隻手向下的“Ⅹ”,這就是羅馬數字的雛形。
後來為了表示較大的數,羅馬人用符號 C 表示一百。C 是拉丁字“centum”的頭一個字母,centum 就是一百的意思(英文“century”就是由此而來)。用符號 M 表示一千。M 是拉丁字“mille”的頭一個字母,mille 就是一千的意思。取字母 C 的一半,成為符號 L,表示五十。用字母 D 表示五百。若在數的上面畫一橫線,這個數就擴大一千倍。這樣,羅馬數字就有下面七個基本符號:I(1)、V(5)、X(10)、L(50)、C(100)、D(500)、 M(1000)。羅馬數字與十進位數字的意義不同,它沒有表示零的數字,與進位制無關。所以當時的人們表示0用 (空格)表示。
羅馬數字因書寫繁難,所以後人很少採用。21 世紀的鐘表表面仍有用它表示時數的。此外,在書稿章節及科學分類時也有採用羅馬數字的。
我國 20 世紀 60~70 年代發行的第三套人民幣冠字號碼中就採用了羅馬數字。另外、早期生產的鐘表也廣泛使用羅馬數字。
羅馬數字起源於古羅馬。一共有 7 個數字元號:I、V、X、L、C、D、M。用羅馬數字表示數時、如果幾個相同的數字並列、就表示這個數的值是數碼的幾倍。例如:羅馬數字要表示 3、可以寫成 Ⅲ;要表示 20,可以寫成 XX;要表示 30、可寫成 XXX。不相同的幾個數碼並列時,如果小的數碼在右邊,就表示數的數值是這幾個數碼的和;如果小的數碼在左邊,就表示數的數值是數碼之差。
例如:6 用羅馬數字可以表示為 Ⅵ;4 用羅馬數字表示為 Ⅳ;11 用羅馬數字表示為 XI;48 用羅馬數字表示為 XLVIII。在數字上面畫一橫線、表示這個數字增值 1000 倍。例如:10000 寫成
;11000 寫成
。遺憾的是,羅馬數字里沒有 0。這種記數法有很大不便。如果表示 8732 這個數、那么就得寫成
,如果要有 0 就方便多了。0 引入的時間是在中世紀,那時歐洲教會的勢力非常強大,他們千方百計地阻止 0 的傳播,甚至有人為了傳播 0 而被處死。
羅馬數字 Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ、Ⅵ、Ⅶ、Ⅷ、Ⅸ,在原有的 9 個羅馬數字中本來就不存在 0。羅馬教皇還自己認為用羅馬數字來表示任何數字不但完全夠用而且十全十美,他們甚至向外界宣布:“羅馬數字是上帝發明的,從今以後不許人們再隨意增加或減少一個數字。”0 是被人們禁止使用的。

有一次,一位羅馬學者在手冊中看到有關於 0 的內容介紹,他認為 0 對記數是很有益處的,於是便不顧羅馬教皇的禁令,在自己的著作中悄悄記載了一些關於 0 的用法,並把一些有關 0 的知識以及在運算中所起到的作用暗中進行傳播。這件事被羅馬教皇知道後,馬上派人把他給囚禁了起來並投入了監獄。教皇為此還大發脾氣地說:“神聖的數,不可侵犯,是上帝創造出來的,決不允許 0 這個邪物加進來,弄污了神聖的數!”
再後來這位學者就被施以酷刑,從此以後就再也不能握筆寫字了。但是黑暗終究戰勝不了光明,人們一旦意識到 0 的重要作用,就會不顧一切地衝破教會的束縛,大膽地使用起它來。
公元725年,比得和他的同事已經使用了零,並用字母N(N是nulla的簡稱,拉丁文釋義為零)代表零。

常見用途

最常見的羅馬數字就是鐘錶的錶盤符號:Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ、Ⅵ、Ⅶ、Ⅷ、Ⅸ、Ⅹ、Ⅺ、Ⅻ……
元素周期表:IA族,IIA族,IIIA族,IVA族,VA族,VIA族,VIIA族,IB族,IIB族,IIIB族,IVB族,VB族,VIB族,VIIB族,VIII族。
對應阿拉伯數字(就是現在國際通用的數字)、就是 1、2、3、4、5、6、7、8、9、10、11、12……(註:阿拉伯數字其實是古代印度人發明的、後來由阿拉伯人傳入歐洲、被歐洲人誤稱為阿拉伯數字。)

記數方法

基本字元
I
V
X
L
C
D
M
相應的阿拉伯數字表示為
1
5
10
50
100
500
1000
  1. 相同的數字連寫、所表示的數等於這些數字相加得到的數、如:Ⅲ=3;
  2. 小的數字在大的數字的右邊、所表示的數等於這些數字相加得到的數、 如:Ⅷ=8、Ⅻ=12;
  3. 小的數字(限於 I、X 和 C)在大的數字的左邊、所表示的數等於大數減小數得到的數、如:Ⅳ=4、Ⅸ=9;
  4. 正常使用時、連寫的數字重複不得超過三次;
  5. 在一個數的上面畫一條橫線、表示這個數擴大 1000 倍。

組數規則

有兩條須注意掌握:
  1. 基本數字 Ⅰ、X 、C 中的任何一個、自身連用構成數目、或者放在大數的右邊連用構成數目、都不能超過三個;放在大數的左邊只能用一個;
  2. 不能把基本數字 V 、L 、D 中的任何一個作為小數放在大數的左邊採用相減的方法構成數目;放在大數的右邊採用相加的方式構成數目、只能使用一個;

對照舉例

·個位數舉例
Ⅰ-1、Ⅱ-2、Ⅲ-3、Ⅳ-4、Ⅴ-5、Ⅵ-6、Ⅶ-7、Ⅷ-8、Ⅸ-9
·十位數舉例
Ⅹ-10、Ⅺ-11、Ⅻ-12、XIII-13、XIV-14、XV-15、XVI-16、XVII-17、XVIII-18、XIX-19、XX-20、XXI-21、XXII-22、XXIX-29、XXX-30、XXXIV-34、XXXV-35、XXXIX-39、XL-40、L-50、LI-51、LV-55、LX-60、LXV-65、LXXX-80、XC-90、XCIII-93、XCV-95、XCVIII-98、XCIX-99
·百位數舉例
C-100、CC-200、CCC-300、CD-400、D-500、DC-600、DCC-700、DCCC-800、CM-900、CMXCIX-999
·千位數舉例
M-1000、MC-1100、MCD-1400、MD-1500、MDC-1600、MDCLXVI-1666、MDCCCLXXXVIII-1888、MDCCCXCIX-1899、MCM-1900、MCMLXXVI-1976、MCMLXXXIV-1984、MCMXC-1990、MM-2000、MMMCMXCIX-3999
·千位數以上舉例
-65,259、
-134,945,584、
-183,650

C++代碼實現

10進制數字向0~3999的羅馬數字的轉換:
include<bits/stdc++.h>using namespace std;class Solution {public:    string intToRoman(int num) {        char* c[4][10]={            {"","I","II","III","IV","V","VI","VII","VIII","IX"},            {"","X","XX","XXX","XL","L","LX","LXX","LXXX","XC"},            {"","C","CC","CCC","CD","D","DC","DCC","DCCC","CM"},            {"","M","MM","MMM"}        };        string roman;        roman.append(c[3][num / 1000 % 10]);        roman.append(c[2][num / 100 % 10]);        roman.append(c[1][num / 10 % 10]);        roman.append(c[0][num % 10]);                return roman;    }}; 

記錄改動

“IIII”這種記號是 14 世紀時特有的,因為法國的查理五世,下令不準用“Ⅳ”,他認為這個“Ⅳ”含有侮辱的意思,從此“Ⅳ”必須寫成“IIII”。
公共紀念建築物、鐘錶、日曆、電視節目製作年份、英文、法文等使用拉丁字母的文字所寫的書籍、檔案的章節編號(多用大寫字母),例如:Chapter ⅩⅩⅠⅤ(第二十四章)、Section ⅤⅠ.3(第六段之第三節)。
有序列表(ordered list)的編號(多用小寫字母),例如:Ⅰ(第一項)、Ⅱ(第二項)、Ⅲ(第三項)、Ⅳ(第四項)、Ⅴ(第五項)、Ⅵ(第六項)。

發展前景

2015 年 7 月,義大利羅馬表示,將放棄使用羅馬數字,因為對現代人來說太複雜。議會已下令將街道指示牌、官方檔案改成義大利文寫法。羅馬市議會通過法案,室內的街道指示牌、身分證明檔案、帳單以及官方檔案都會改成義大利文寫法。例如數字 2 的羅馬數字“II”、將改為義大利文的“secondo”。
義大利國家統計局表示、義大利只剩下首都羅馬使用羅馬數字,官方希望全國統一使用相同的數字系統。雖然街道標示牌或公文不會馬上改變,身份證等其他檔案,將會發行新的版本。
羅馬宣布這一新措施後,就被痛批是一種“文化自殺”行為。官方竟然帶頭破壞羅馬珍貴的文化資產,而且使用義大利文寫法也沒有比較簡單。文化界更表示,保存羅馬數字不僅具有文化價值,更是一種身分認同,影響對未來新一代的教育,呼籲相關部門三思。
隨後,羅馬市政府出面闢謠稱,這道政令僅僅是按照義大利國家統計局的要求,對相關資料庫進行的規範化處理而已,“我可以向羅馬市民保證,不會有任何一塊路牌會被替換,而市政府也無意廢除羅馬數字”。

相關詞條

熱門詞條

聯絡我們