博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将阿拉伯数字转换为罗马数字
阅读量:4149 次
发布时间:2019-05-25

本文共 1508 字,大约阅读时间需要 5 分钟。

  昨天,写了一个将罗马数字转换成阿拉伯数字的过程,今天来写一个反过程吧,将阿拉伯数字转化成罗马字符串

实现原理很简单,一看就能明白的,将数字先拆分成一个一个的小于10的数字,然后在各自转换则可。

PythonCode:
def numToRomanNum(Num): """digital will be converted into Roman numerals,Ex: numToRomanNum(3999)"""     if Num < 1 or Num > 3999:         print 'The Num must in 1-3999'     else:         NumDic = {             '1':('I','IV','V','IX'),             '2':('X','XL','L','XC'),             '3':('C','CD','D','CM'),             '4':('M')             }         items = sorted(NumDic.items())         retstr = ''         for item in items:             str = ''             (Num,modNum) = divmod(Num,10)             if modNum != 0:                 if item[0] != '4':                     if modNum <= 3:                         while modNum > 0:                             str = str.join(['',item[1][0]])                             modNum -= 1                     elif modNum < 5:                         str = item[1][1]                     elif modNum == 5:                         str = item[1][2]                     elif modNum < 9:                         str = item[1][2]                         while modNum > 5:                             str = str.join(['',item[1][0]])                             modNum -= 1                     else:                         str = item[1][3]                 else:                     while modNum > 0:                         str = str.join(['',item[1][0]])                         modNum -= 1                 retstr = str.join(['',retstr])         return retstr

转载地址:http://vesti.baihongyu.com/

你可能感兴趣的文章
数组中累加和为定值K的最长子数组长度
查看>>
素数对--腾讯2017校招编程
查看>>
JAVA集合--ArrayList实现原理
查看>>
synchronized与Lock
查看>>
数据库索引
查看>>
实现包含min,max,push,pop函数的栈
查看>>
实验2-6 字符型数据的输入输出
查看>>
实验3-5 编程初步
查看>>
实验4-1 逻辑量的编码和关系操作符
查看>>
实验5-2 for循环结构
查看>>
实验5-3 break语句和continue语句
查看>>
实验5-4 循环的嵌套
查看>>
实验5-5 循环的合并
查看>>
实验5-6 do-while循环结构
查看>>
实验5-7 程序调试入门
查看>>
实验5-8 综合练习
查看>>
第2章实验补充C语言中如何计算补码
查看>>
深入入门正则表达式(java) - 命名捕获
查看>>
使用bash解析xml
查看>>
android系统提供的常用命令行工具
查看>>