整数的罗马数字表示法

1 投票
5 回答
681 浏览
提问于 2025-04-16 06:10

可能重复的问题:
如何将一个整数转换为罗马数字

我在寻找一个简单的算法(最好是用Python写的)。怎么把一个给定的整数转换成罗马数字呢?

string Roman(int Num){...}

比如,Roman(1981) 应该输出 "MCMLXXXI"。

5 个回答

1

这里有一个很长的解释,里面附带了很多源代码:

http://www.faqs.org/docs/javap/c9/ex-9-3-answer.html

不过我觉得可以做得更有效率一些。

1

我想不出有什么第三方库可以实现这个功能。有时候你需要自己写一些代码,虽然网上有很多相关的例子可以参考。这里有一个来自RoseIndia的例子。

3

我有一次需要做相反的事情(把罗马数字转换成int)。维基百科上有关于罗马数字的详细信息,内容非常丰富。一旦你明白这些规则是这么清晰,而且有这么容易找到的说明,写成代码就变得简单多了。

撰写回答