浙江省高等学校教师教育理论培训

微信搜索“毛凌志岗前心得”小程序

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

罗马数字转换阿拉伯数字(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。

posted on 2012-06-16 06:52  lexus  阅读(1846)  评论(0编辑  收藏  举报