OJ刷题---罗马数字转十进制
2015-08-24 09:41
239 查看
题目要求:
输入代码:
运行结果:
输入代码:
#include<iostream> using namespace std; int main() { int i,j,n,k; int num[7]= {1, 5,10,50,100,500,1000}; //罗马数字转换模板 char str[7]= {'I','V','X','L','C','D','M'}; int a[7];//定义一个转换成十进制的保存数组 char pL[7];//要输入的罗马数字 cin>>n; for(i=0; i<n; i++) { int sum=0; for(j=0; j<7; j++) { a[j]=-1; } cin>>pL; //输入一个罗马数字 for(j=0; pL[j]!='\0'; j++)//将罗马数字转化为具体数值 { for(k=0; k<7; k++) { if(pL[j]==str[k]) { a[j]=num[k]; break; } } } for(j=0; j<7; j++)//求最终结果 { if(a[j]==-1) break; if(a[j]<a[j+1]) { sum+=a[j+1]-a[j]; j++; continue; } else sum+=a[j]; } cout<<sum<<endl; } return 0; }
运行结果:
相关文章推荐
- 社説 20150824 震災遺構の保存 合意形成へ議論を尽くそう
- 20个高级java面试题汇总
- Android监听照相广播
- dedecms 蜘蛛抓取设置 robots.txt
- css属性image-redering详解
- hdoj 1286 找新朋友 【欧拉函数】
- A2.3封装 P374
- [LeetCode] Missing Number (A New Questions Added Today)
- play Framework如何通过实体.find查询Date类型字段
- [BBS]搭建开源论坛之Jforum搭配开源CKEDITOR
- HashMap源码阅读笔记
- HDOJ--2035--人见人爱A^B
- [BBS]搭建开源论坛之Jforum搭配开源CKEDITOR
- [BBS]搭建开源论坛之Jforum搭配开源CKEDITOR
- 菜鸟vimer成长记——第4.0章、Vim插件管理利器-Vundle
- [CLR via C#]异常和状态管理
- APP开发工具对比!!
- 2015/08/24——战略性建仓
- C++ 与C
- 云计算原来是IT界工资最高的