C++罗马数字与十进制数字互相转换
来源:互联网 发布:delphi数据库编程实例 编辑:程序博客网 时间:2024/05/17 20:24
//罗马数字转十进制int map(char a){switch (a){case 'I':return 1;case 'V':return 5;case 'X':return 10;case 'L':return 50;case 'C':return 100;case 'D':return 500;case 'M':return 1000;default:break;}return 0;}int RomanToInt(string s) { int result = 0;//返回结果 //比较当前字符与前一个字符,如果较小,则直接加上对应的数,如果较大,则加上对应的数并且减去2倍的前一个数 for (size_t i = 0; i < s.size(); i++) { if (i>0 && map(s[i]) > map(s[i - 1])) result += map(s[i]) - 2 * map(s[i - 1]); else result += map(s[i]); } return result; }//十进制转罗马数字string IntTorRoma(int num){char* chac[4][10] = { { "","I","II","III","IV","V","VI","VII","VIII","IX" },{ "","X","XX","XXX","XL","L","LX","LXX","LXXX","XC" },{ "","C","CC","CCC","CD","D","DC","DCC","DCCC","CM" },{ "","M","MM","MMM" } };int num;cin >> num; string roam;roam.append(chac[3][num / 1000 % 10]);roam.append(chac[2][num / 100 % 10]);roam.append(chac[1][num / 10 % 10]);roam.append(chac[0][num % 10]);return roam;}
阅读全文
0 0
- C++罗马数字与十进制数字互相转换
- 罗马数字转换为十进制数字
- 罗马数字转十进制数字
- 13 12罗马数字和阿拉伯数字互相转换
- objective-c与c字符串互相转换
- 罗马数字与阿拉伯数字相互转换
- [C#] 十六进制 与 十进制 的互相转换
- Objective-C 字符串与数值互相转换
- Objective-C 字符串与数值互相转换
- Objective-C -- 字符串与数字互相转换
- c语言 int与byte[]互相转换
- C字符串 与 uint32类型互相转换
- python实现阿拉伯数字和罗马数字的互相转换
- C语言将十六进制字符串转换成对应的十进制数字
- 罗马数字,c#,怎么进行转换!好用
- 【C++】将罗马数字转换成阿拉伯数字
- BCD码简介及其与十进制数字字符串之间的转换
- BCD码简介及其与十进制数字字符串之间的转换
- groovy的集合 Map
- 通讯录小项目
- Makefile大综合基础知识
- react和react-native样式区别
- android中像素单位dp、px、pt、sp的比较
- C++罗马数字与十进制数字互相转换
- 自定义注解 annotation 总结
- android中的AsyncTask例子
- 数据结构栈--单链表实现
- Java--集合
- android中的handler是怎么回事
- xml 简介
- 树莓派瞎折腾[2]-树莓派化身FM电台
- Activity 启动模式