羅馬數字轉換阿拉伯數字(Java版,考慮較為全面)

weixin_34321977發表於2012-06-16

羅馬數字轉換阿拉伯數字(Java版,考慮較為全面) - li002qwe的專欄 - 部落格頻道 - CSDN.NET

羅馬數字轉換阿拉伯數字(Java版,考慮較為全面)


分類:
小程式


1628人閱讀
評論(3)
收藏
舉報

 

一. 前言

 

     朋友的作業,本想在網上找個現成的改改就行啦。可是一番google、baidu之後,找到的要麼不是Java版本的,要麼就是考慮的不夠全面。遂,筆者自己寫了個,如有考慮不全面的地方,望大家能夠指出。下面進入正題。

 

二. 羅馬數字規則

 

      羅馬數字無表示零的數。

      表示數的基本方法:除I、X、C位於大數後作為加數,位於大數前作為減數外,一般把若干羅馬基本數字寫在一起,它表示的數字等於各個數字的和。

     1. 重寫:   III(3)      XX(20)     CC(200)   

     2. 左減:   IX(9)      XL(40)     CD(400)

     3. 右加:   VII(7)     XI(11)      LX(60)

     4. 綜合前三種方法:XLV(L-X+V,45)   LXII(L+X+I+I,62)

     若在數字上方加一橫線,表示增大1000倍。(此規則由於如果輸入,故程式中未實現)

 

     注意點:

     1.  I、X、C在大數右邊(即相加時)不能連續超過三個,在大數左邊(即相減時)只能用一個。

     2.  V、L、D不能用於大數左邊(相減),只能用於大數右邊(相加),且只使用一個。

     3.  V、X左邊小數只用I;L、C左邊小數只用X;D、M左邊小數只用C。

相關文章