【经典算法】: 罗马数字

关于罗马数字,一到10可以介绍给大家一个简单的记法

I 代表 1
V 代表 5
X 代表 10
4 9 特殊记 在 V 和 X 的左边放一个 I 代表减去 1
thus : 4 —> IV 9 —>IX
其余的正常记就成 不断加即可

关于一个转换的代码,将输入的数字转换为罗马数字

道理很简单的 就是把数字和相应的字符串对应上,在对应到相应数字的时候输出那个字符串就好了。

当然,为了实现这个技巧必须要使用数组,我用了C++里面的结构体数组来对应数字,详见代码,通俗易懂,一看就明白

// 罗马数字转换
// author:seen
// time:2015-10-09
#include <iostream>
#include <string>
using namespace std;
struct doc{
    string s;
}D[11];
int main(){
    D[1].s = "I";
    D[2].s = "II";
    D[3].s = "III";
    D[4].s = "IV";
    D[5].s = "V";
    D[6].s = "VI";
    D[7].s = "VII";
    D[8].s = "VIII";
    D[9].s = "IX";
    D[10].s = "X";
    for(int i=1;i<=10;i++) cout<<D[i].s<<endl;
    return 0;
}

你可能感兴趣的:(代码,算法,字符串,X)