C++课程设计复数计算器Word格式文档下载.doc

上传人:b****2 文档编号:14174416 上传时间:2022-10-19 格式:DOC 页数:20 大小:136KB
下载 相关 举报
C++课程设计复数计算器Word格式文档下载.doc_第1页
第1页 / 共20页
C++课程设计复数计算器Word格式文档下载.doc_第2页
第2页 / 共20页
C++课程设计复数计算器Word格式文档下载.doc_第3页
第3页 / 共20页
C++课程设计复数计算器Word格式文档下载.doc_第4页
第4页 / 共20页
C++课程设计复数计算器Word格式文档下载.doc_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

C++课程设计复数计算器Word格式文档下载.doc

《C++课程设计复数计算器Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《C++课程设计复数计算器Word格式文档下载.doc(20页珍藏版)》请在冰豆网上搜索。

C++课程设计复数计算器Word格式文档下载.doc

开始

输出菜单及提示信息

输入选择

是否做加法

N

是否做减法

N

Y

是否进行测试

N

加法子程序Add()

Y

......……

减法子程序

Y

测试子程序

是否退出

N

Y

结束

2.程序设计思想

1)类的封装

程序中将复数形式的数据定义成一个复数类CComplex,重载了加法及减法等运算符,使函数的加减等运算像一般数据一样方便.每个运算符重载都用一个函数去实现。

参考类的定义如下:

classCComplex{

private:

doubleReal,Image;

public:

CComplex(doublereal=0,doubleimage=0)//构造函数

{Real=real;

Image=image;

}

friendistream&

operator>

>

(istream&

is,CComplex&

com);

//重载输入

friendostream&

operator<

<

(ostream&

os,CComplex&

//重载输出

CComplexoperator+(CComplex&

CComplexoperator-(CComplex&

//减法重载

CComplexoperator*(CComplex&

//乘法重载

CComplexoperator/(CComplex&

//除法重载

intoperator==(CComplex&

intoperator!

=(CComplex&

intoperator>

(CComplex&

intoperator<

floatModule(void);

//复数求模

};

(2)设计的任务要求1

在实际应用中,输入复数可能为a+bi,a,bi,-a,-bi,+i.–i.I等形式。

重载输入运算符应该能识别这样形式多样的复数。

所以在重载输入函数时要综合考虑上述各种输入形式。

可行的处理方式是:

在重载输入函数中,设计用

(3)设计的任务要求2

在程序中设计一个复数运算的测试函数Test(),其功能是让计算机随机出10道运算题,用户给出答案,同时计算机实时判断对错并可以打分。

这个函数的关键是让计算机随机产生复数对象和运算符,计算机内部有一个随机数发生器,可以产生一个固定顺序的整型随机数序列,调用语句为“inta=rand();

”这时,a就是该随机数发生器产生的随机数。

由于产生的随机书数在整数范围内,为测试方便,按程序设计要求,产生的随机复数对象实部和虚部在100以内,运算符只有加减两种。

因此,需要对产生的随机数进行进一步的处理,用随机数模除以除以100,产生出100以内的随机整数;

同样,用随机数模除以3,可以产生出0、1、3三个随机数据,定义0为加法,1为减法,2为乘法,这样就可以产生出随机的复数对象的加减乘运算了。

可以参见图2测试子程序Test()结构框图。

设置循环次数为10

用两个随机数

初始复数对象3

产生8个100以内的随机数

随机数

最后两个随机数

初始复数对象4

前两个随机数

初始复数对象1

用户输入结果

两对象相乘

后两个随机数

初始复数对象2

结果是否正确

产生2以内的随机数op

N

总分加10

Op为0

两对象相减

两对象相加

NN

输出出错信息

YY

输出总分

(4)设计的任务要求3

在程序中重载了>

运算符,其功能是让用户能够直接输入a+bi,a+b*i两种形式的复数,其结构框图如图3所示。

以字符串的形式接受复数对象

求字符串长度

初试化当前数值n=0,字符变量sign=1

字符串是否存在非法字符

Y

输出错误信息,函数返回

是否判别完字符串中所有字符

N

Y

最后一个字符不是‘i’且n!

=0

当前字符为+、-号,同时n!

N

复数对象只有实部,前面取出的数值赋给实部

N

前面取出的数值赋给实部,n=0

N

当前字符是否是‘+’

Sign=1,k++

当前字符是否是‘-’

N

Sign=-1,k++

当前字符是否是为‘i’

‘i’是否是最后一个字符

N

YY

N

输出错误信息,函数返回

当前字符是否是数字字符

将字符转变为数值

Y

3.程序界面

开始界面

运行结果界面

4.程序源代码及详细注解:

#include<

iostream.h>

math.h>

stdlib.h>

string.h>

#defineZ1e-6

into

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 人力资源管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1