给定一个整数 num,将整数转换成罗马数字。
如 1,2,3,4,5 对应的罗马数字分别为I
,II
,III
,IV
,V
等,更详细的说明见此 链接。
输入格式
第一行输入一个整数 num(1≤num≤3999)。
输出格式
输出 num 对应的罗马数字。
样例输入
123
样例输出
CXXIII
#include <iostream>
using namespace std;
string Roman_num(int int_num);
int main()
{
int num;
cin>>num;
if(num/1000!=0)
{
cout<<Roman_num(num-num%1000);
num=num%1000;
}
if(num/100!=0)
{
cout<<Roman_num(num-num%100);
num=num%100;
}
if(num/10!=0)
{
cout<<Roman_num(num-num%10);
num=num%10;
}
if(num!=0)
cout<<Roman_num(num);
return 0;
}
string Roman_num(int int_num)
{
string roman_sor[10][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"}};
if(int_num<10)
return roman_sor[0][int_num-1];
else if(int_num>=10&&int_num<100)
return roman_sor[1][int_num/10-1];
else if(int_num>=100&&int_num<1000)
return roman_sor[2][int_num/100-1];
else if(int_num>=1000)
return roman_sor[3][int_num/1000-1];
}