罗马数字转换
阿拉伯数字与罗马数字互转,支持 1-3999,遵循标准减法规则。
什么是罗马数字?
罗马数字是古罗马人使用的计数系统,至今仍广泛出现在钟表表盘、书籍章节编号、影视剧片尾年份、君主与教皇称号(如路易十四、本笃十六世)等场合。它使用 7 个基本符号:I(1)、V(5)、X(10)、L(50)、C(100)、D(500)、M(1000),通过符号的组合与排列来表示数值。
罗马数字遵循两条基本规则:加法规则——大数在后小数在前时相加,如 VI = 5 + 1 = 6;减法规则——小数放在大数左侧时相减,如 IV = 5 − 1 = 4,MCMXCIX = 1000 + (1000−100) + (100−10) + (10−1) = 1999。为了规范书写,每个位上的数字只能用有限几种组合表示(如 9 只能用 IX,不能用 VIIII),这保证了书写的唯一性。
本工具按标准规则实现双向转换:阿拉伯数字转罗马数字采用贪心算法,从 1000 到 1 依次取尽可能大的符号组合;罗马数字转阿拉伯数字采用顺序扫描,当前符号比下一符号小就相减,否则相加。经典罗马数字体系没有 0 和万位符号,因此支持范围限定为 1-3999。转换过程完全在浏览器本地完成。
使用步骤
- 在「转换方向」中选择阿拉伯转罗马或罗马转阿拉伯;
- 在输入框中填写数字或罗马数字;
- 点击「开始转换」按钮;
- 查看结果区的转换结果与拆解过程;
- 点击「复制」按钮复制结果。
常见问题
罗马数字有哪些基本符号?
基本符号共 7 个:I=1、V=5、X=10、L=50、C=100、D=500、M=1000。较小的符号放在较大符号左侧表示相减(如 IV=4),放在右侧表示相加(如 VI=6)。
为什么只支持 1 到 3999?
经典罗马数字没有 0 和专门的万位符号,4000 需要用带横线的符号表示(在 M 上加横线表示 1000 的 1000 倍),超出了标准书写范围,因此本工具限定在 1-3999。
罗马数字转换的规则是什么?
转换采用贪心算法:按 1000、900、500、400、100、90、50、40、10、9、5、4、1 的顺序依次取尽可能大的符号。反向解析时从左到右扫描,当前符号小于下一符号则相减,否则相加。
可以转换 0 或负数吗?
不可以。经典罗马数字体系中不存在 0 的写法,也不支持负数,本工具只接受 1-3999 的整数和该范围内的合法罗马数字。