蓝桥杯 c++ 罗马数字转换问题

原创 2013年12月02日 23:31:38

#include"iostream.h"
#include"string.h"
int jisuan(int i,int j,int z)
{ int count=0;
 int a[7]={1,5,10,50,100,500,1000};
 if(z==1) count=a[i];
 if(z==0) count=-a[i];
 return count;
}
int quan(char a,char b)
{ int q,h,p;
char c[7]={'I','V','X','L','C','D','M'};
 for(int i=0;i<7;i++)
 { if(c[i]==a) q=i;
  if(c[i]==b) h=i;
 }
 if(q-h>=0)p=jisuan(q,h,1);
    else p=jisuan(q,h,0);
 return p;
}

int f(char b[],int n)
{ int count=0;
 for(int i=0;i<n;i++)
 { count=count+quan(b[i],b[i+1]);
 }
 return count;
}
main()
{ char a[100][20];
 int n;
 cout<<"********¥¥¥¥¥¥¥罗马字符转化为阿拉伯数字值¥¥¥¥¥¥¥*****"<<endl;
 cout<<"insert:";
 cin>>n;
 for(int i=0;i<n;i++)
  cin>>a[i];
 for(int j=0;j<n;j++)
  cout<<f(a[j],strlen(a[j]))<<endl;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

[C++]LeetCode 12: Integer to Roman(将整数转换为罗马数字)

Problem: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the rang...
  • emmaalways
  • emmaalways
  • 2015年05月19日 21:08
  • 455

hihocoder 1566 皇室成员的名字(罗马数字转换+结构体排序)

题目链接:http://hihocoder.com/problemset/problem/1566【中文题意】1566 : 皇室成员的名字时间限制:10000ms 单点时限:1000ms 内存限制...
  • qq_32866009
  • qq_32866009
  • 2017年09月06日 20:04
  • 247

蓝桥杯---罗马数字(水题)

古罗马帝国开创了辉煌的人类文明,但他们的数字表示法的确有些繁琐,尤其在表示大数的时候,现在看起来简直不能忍受,所以在现代很少使用了。之所以这样,不是因为发明表示法的人的智力的问题,而是因为一个宗教的原...
  • u014665013
  • u014665013
  • 2015年04月07日 15:59
  • 569

【C++】将罗马数字转换成阿拉伯数字

题目:Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from...
  • w417950004
  • w417950004
  • 2017年10月29日 14:22
  • 200

python实现阿拉伯数字和罗马数字的互相转换

题目很简单,如果之前也做过这种题目的话,相信对于什么是罗马数字就不会很陌生了,罗马数字是很古老的计数方法,现在的一些地方还有见到它的使用,下面简单贴两张维基百科的图片简单回顾一下罗马数字: ...
  • Together_CZ
  • Together_CZ
  • 2017年08月05日 16:43
  • 1688

罗马数字转换为十进制数字

给定一个罗马数字s,( I
  • u010002184
  • u010002184
  • 2016年02月25日 18:39
  • 1106

java将阿拉伯数字转化为罗马数字 I II III IV V VI

来源互联网,写的非常棒。摘录在此。 package com; import java.util.Scanner; //引入Scanner工具 public class RomanNumber{...
  • ferndean
  • ferndean
  • 2015年06月15日 16:26
  • 2764

蓝桥杯 罗马数字转十进制 找规律

古罗马帝国开创了辉煌的人类文明,但他们的数字表示法的确有些繁琐,尤其在表示大数的时候,现在看起来简直不能忍受,所以在现代很少使用了。之所以这样,不是因为发明表示法的人的智力的问题,而是因为一个宗教的原...
  • wr132
  • wr132
  • 2015年03月15日 16:43
  • 649

整数转换成罗马数字

给定一个整数num,( 1 如1,2,3,4,5对应的罗马数字分别位I,II,III,IV,V等。 格式:    第一行输入一个整数,接下来输出对应的罗马数字。 输入:123 ...
  • Zidane_2014
  • Zidane_2014
  • 2015年04月20日 16:27
  • 1423

leetcode 罗马数字与整数的转换算法

leecode 罗马数字与整数的转换算法
  • net_wolf_007
  • net_wolf_007
  • 2016年06月27日 18:01
  • 3592
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:蓝桥杯 c++ 罗马数字转换问题
举报原因:
原因补充:

(最多只允许输入30个字)