用C++编写一个小型复数计算器的代码,求大神解救!!!!
任务3.复数计算器及小型管理系统设计(可以进行选择)请用面向对象方法设计并实现一个小型复数计算器,包括如下功能:实现复数的设置和显示实现复数加、减、乘、除等功能,并显示运...
任务3.复数计算器及小型管理系统设计(可以进行选择)
请用面向对象方法设计并实现一个小型复数计算器,包括如下功能:实现复数的设置和显示实现复数加、减、乘、除等功能,并显示运算结果
设计要求:
完成类的设计,屏幕显示采用菜单形式。
(1)设计类
(2)进行类成员函数的实现
(3)给出代码的注释
(4)画出系统中出现的类的类图
整体功能
(1) 可以通过菜单提示进行某种四则运算,能显示正确结果
(2) 有查询结束标志。
(3) 有查询提示。
(4) 界面友好 展开
请用面向对象方法设计并实现一个小型复数计算器,包括如下功能:实现复数的设置和显示实现复数加、减、乘、除等功能,并显示运算结果
设计要求:
完成类的设计,屏幕显示采用菜单形式。
(1)设计类
(2)进行类成员函数的实现
(3)给出代码的注释
(4)画出系统中出现的类的类图
整体功能
(1) 可以通过菜单提示进行某种四则运算,能显示正确结果
(2) 有查询结束标志。
(3) 有查询提示。
(4) 界面友好 展开
展开全部
#
#包括
Complex类使用命名空间std; {
私人如下:
双m_real;
双m_complex; BR />公共:/ /每个函数的定义。
大楼(双实= 0.0,双复杂= 0.0);
的无效Setnumber();
复杂的操作符+(复杂对象);
复杂的运营商(复杂和) ;
复杂的操作符*(大楼及);
复杂的操作员/(复杂);
布尔运算符==(大楼及);
显示();
>};
复杂::大楼(双实,双复数)
{
m_real =真正的;
m_complex复杂;
}
无效情结:: Setnumber()/ /定义设置功能。
{
/ *法院<<“输入的实部的数量:”;
CIN >> m_real;
法院<<“输入复杂的部分号码: “
CIN >> m_complex * /
字符串s;
INT I = 1,标志= 2,FLAG1 = 0;
m_real = m_complex = 0;
> cout <<“请输入的数目:”;/ /输入的字符串,在字符串中的每个字符,以确定的实部和虚部。
CIN >> S;
(I <= s.size())
{
(S [I-1] ==' - '&&我== 1)
+ +;
(S [I-1] = 48)
{
(标志== 2 m_real:m_complex)* = 10;
(标志== 2?m_real:m_complex)+ =则s [i-1] -48;
}
其他
{ BR />(S [I-1] =='I')
标志= 1;
其他
标志= 0;
(S [I-1] ==' - ')
FLAG1 = 1;
}
+ +;
}
/ /后来被判处段改变符号,因为很多的需要考虑这么分的情况下实现。
(== 0 && m_real m_complex == 0)/ /如果为0,这种缺失-I + I上面这两种情况下,使这里。
m_real = 1;
([0] ==' - ')/ /如果它的实部为负。
m_real * = -1;
(FLAG1 == 1)/ /如果是负的虚部。
m_complex * = -1;
如果下(flag == 1 &&变量flag1 == 0 && m_complex == 0)/ /如果没有的虚部的实数部分。
{
m_complex = m_real;
m_real = 0;
}
}
/ /下面是一些重载运算符的实现我相信,你可以阅读!
复合的::运算符+(大楼及对象)
{
复杂的温度;
temp.m_real这 - > m_real + object.m_real
温度。 m_complex => m_complex + object.m_complex
回报条件;
}
复杂复杂::运算符(复杂对象)
{
复杂的温度;
temp.m_real这 - > m_real + object.m_real;
temp.m_complex = - > m_complex + object.m_complex
回报条件;
}
纷繁复杂的::运算符*(复杂对象)
{
复杂的温度;
temp.m_real这 - > m_real object.m_real,这> m_complex *对象。 m_complex;
temp.m_complex这> m_complex * object.m_real +本 - > m_real * object.m_complex
回报条件;
}
复杂复杂::运算符/ (复杂对象)
{
复杂的温度;
temp.m_real - 这> m_real * object.m_real +本 - > m_complex object.m_complex;
temp.m_complex =这 - > m_complex * object.m_real - > m_real * object.m_complex
temp.m_real / = object.m_real * object.m_real + object.m_complex * object.m_complex
温度。 m_complex / = object.m_real * object.m_real + object.m_complex object.m_complex;
回报条件;
}
布尔复杂:: ==操作符(复杂对象)
> {
( - > m_real == object.m_real && - 这> m_complex == object.m_complex)
回报(COUT <如果(> m_real m_complex <object.m_complex)
回报(COUT <<“正式不到最后!”< endl,0); BR />其他
回报(COUT <<“正式皆不比过去!”<< endl,0);
}
无效复杂::显示()
{
m_real == 0? cout <<“请\ n”法院“m_real
如果(m_complex中> 0 && m_real,)
法院<<”+“;
m_complex <= 0? m_complex == 0? cout <<“请\ n”:法院<< m_complex,“我”<< endl:法院<< m_complex <<“”<< endl;
}
诠释的main()
{
复合object1,object2的,object3,object4;
object1.Setnumber();
object2.Setnumber();
object1.Display();
(object1 object2的)。显示();/ /调用函数没有这个,但你可以实现一个重载的输出流功能。
object1 == object2的;/ /判断。
(object1/object2)。显示();
返回0;
}
你可以仔细看看! !
#包括
Complex类使用命名空间std; {
私人如下:
双m_real;
双m_complex; BR />公共:/ /每个函数的定义。
大楼(双实= 0.0,双复杂= 0.0);
的无效Setnumber();
复杂的操作符+(复杂对象);
复杂的运营商(复杂和) ;
复杂的操作符*(大楼及);
复杂的操作员/(复杂);
布尔运算符==(大楼及);
显示();
>};
复杂::大楼(双实,双复数)
{
m_real =真正的;
m_complex复杂;
}
无效情结:: Setnumber()/ /定义设置功能。
{
/ *法院<<“输入的实部的数量:”;
CIN >> m_real;
法院<<“输入复杂的部分号码: “
CIN >> m_complex * /
字符串s;
INT I = 1,标志= 2,FLAG1 = 0;
m_real = m_complex = 0;
> cout <<“请输入的数目:”;/ /输入的字符串,在字符串中的每个字符,以确定的实部和虚部。
CIN >> S;
(I <= s.size())
{
(S [I-1] ==' - '&&我== 1)
+ +;
(S [I-1] = 48)
{
(标志== 2 m_real:m_complex)* = 10;
(标志== 2?m_real:m_complex)+ =则s [i-1] -48;
}
其他
{ BR />(S [I-1] =='I')
标志= 1;
其他
标志= 0;
(S [I-1] ==' - ')
FLAG1 = 1;
}
+ +;
}
/ /后来被判处段改变符号,因为很多的需要考虑这么分的情况下实现。
(== 0 && m_real m_complex == 0)/ /如果为0,这种缺失-I + I上面这两种情况下,使这里。
m_real = 1;
([0] ==' - ')/ /如果它的实部为负。
m_real * = -1;
(FLAG1 == 1)/ /如果是负的虚部。
m_complex * = -1;
如果下(flag == 1 &&变量flag1 == 0 && m_complex == 0)/ /如果没有的虚部的实数部分。
{
m_complex = m_real;
m_real = 0;
}
}
/ /下面是一些重载运算符的实现我相信,你可以阅读!
复合的::运算符+(大楼及对象)
{
复杂的温度;
temp.m_real这 - > m_real + object.m_real
温度。 m_complex => m_complex + object.m_complex
回报条件;
}
复杂复杂::运算符(复杂对象)
{
复杂的温度;
temp.m_real这 - > m_real + object.m_real;
temp.m_complex = - > m_complex + object.m_complex
回报条件;
}
纷繁复杂的::运算符*(复杂对象)
{
复杂的温度;
temp.m_real这 - > m_real object.m_real,这> m_complex *对象。 m_complex;
temp.m_complex这> m_complex * object.m_real +本 - > m_real * object.m_complex
回报条件;
}
复杂复杂::运算符/ (复杂对象)
{
复杂的温度;
temp.m_real - 这> m_real * object.m_real +本 - > m_complex object.m_complex;
temp.m_complex =这 - > m_complex * object.m_real - > m_real * object.m_complex
temp.m_real / = object.m_real * object.m_real + object.m_complex * object.m_complex
温度。 m_complex / = object.m_real * object.m_real + object.m_complex object.m_complex;
回报条件;
}
布尔复杂:: ==操作符(复杂对象)
> {
( - > m_real == object.m_real && - 这> m_complex == object.m_complex)
回报(COUT <如果(> m_real m_complex <object.m_complex)
回报(COUT <<“正式不到最后!”< endl,0); BR />其他
回报(COUT <<“正式皆不比过去!”<< endl,0);
}
无效复杂::显示()
{
m_real == 0? cout <<“请\ n”法院“m_real
如果(m_complex中> 0 && m_real,)
法院<<”+“;
m_complex <= 0? m_complex == 0? cout <<“请\ n”:法院<< m_complex,“我”<< endl:法院<< m_complex <<“”<< endl;
}
诠释的main()
{
复合object1,object2的,object3,object4;
object1.Setnumber();
object2.Setnumber();
object1.Display();
(object1 object2的)。显示();/ /调用函数没有这个,但你可以实现一个重载的输出流功能。
object1 == object2的;/ /判断。
(object1/object2)。显示();
返回0;
}
你可以仔细看看! !
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询