C++大作业阿拉伯与罗马数的转换 联系客服

发布时间 : 星期六 文章C++大作业阿拉伯与罗马数的转换更新完毕开始阅读31e431abe3bd960590c69ec3d5bbfd0a7956d5df

2.5流程图 开始 选择是否将罗马数字转换为十进制数 N Y 输入所要转换的罗马数字(大写) 进行将十进制转化为罗马数字通道 输入所要转换的十进制数字 输出转换后的数字到屏幕 是否继续转换 N 结束 3.程序详细设计

3.1关键代码分析

cout<<\罗马数据--->10进制数(按1)\

cout<<\进制数--->罗马数据(按2)\ cin>>select;

cout<

以上步骤为选择是否将罗马数字转换成十进制数,即选择模式。引用if条件选择模式,如图1

图1

3.11罗马数据转换成十进制数

cout<<\请输入罗马数据:\ cin>>rome; d=0; int i=0;

for(i=0;rome[i]!='\\0';i++) {

if(rome[i]=='M') d=d+1000; if(rome[i]=='D') d=d+500; if(rome[i]=='C') d=d+100; if(rome[i]=='L') d=d+50;

if(rome[i+1]=='X'&&rome[i]=='I'){ d=d+9;i=i+2; } else{

if(rome[i]=='X')d=d+10; }

if(rome[i+1]=='V'&&rome[i]=='I'){ d=d+4;i=i+2; }else{ if(rome[i]=='V') d=d+5; if(rome[i]=='I') d=d+1; }

}

cout<<'\\n'<<\转化成十进制数为:\

选择通道1,将罗马数字转换为十进制数,如图

2

图2

3.12将十进制数转换为罗马数据

if(select==2)

{char M,D,C,L,X,I;

int n;

cout<<\请输入十进制数据:\ cin>>n;

cout<<'\\n'<<\转化成罗马数据为:\ covert2Roman(n); }

cout<

与上述情况一致,选择通道2输入十进制数将之转换为罗马数据,如图3

图3

需要指出,程序中多次使用选择结构,可见掌握好基本结构的重要性,

3.2疑难问题解决

输入代码时不注意细节问题,比如大小写问题,代码源问题,造成代码错误,进而程序运行失败,

4.使用情况

4.1展示各种的功能运行情况

选择是否将罗马数字转换成十进制数

图4

罗马数据转换成十进制数

图5

将十进制数转换为罗马数据

图6

5.总结

5.1程序的优点和缺点

该程序可准确迅速实现罗马数据与十进制数据间的转换,但相比于c语言及java相比稍微复杂。但c++可以制作很多c语言及java实现不了的东西。本程序可以任意结束,应用方便。