
利用C++语言设计一个复数计算器,能计算复数,实数的加减乘除,以及计算单个复数向量角,两个复数夹角。 20
原题在此:利用C++语言设计和实现一个复数计算器,要求具备如下主要功能:(1)建立实数类、复数类(2)实现实数、复数信息的初始化(3)实现实数的加、减、乘、除、自增、自减...
原题在此:利用C++语言设计和实现一个复数计算器,要求具备如下主要功能:
(1)建立实数类、复数类
(2)实现实数、复数信息的初始化
(3)实现实数的加、减、乘、除、自增、自减、求平方、二次方根等操作
(4)实现复数的加、减、乘、除、取模、求平方、求共轭复数、求单个复数的向量角、求两个复数的夹角等运算
(5)实现实数、复数信息的输出 展开
(1)建立实数类、复数类
(2)实现实数、复数信息的初始化
(3)实现实数的加、减、乘、除、自增、自减、求平方、二次方根等操作
(4)实现复数的加、减、乘、除、取模、求平方、求共轭复数、求单个复数的向量角、求两个复数的夹角等运算
(5)实现实数、复数信息的输出 展开
展开全部
基本结构,输入输出,实数虚数的表示方法,部分运算已经给你写了。剩下的就是数学的东西了,参考我已经写好的结构自己完善好了。
实数就是 number(real),虚数就是 number(real,image)。
#include <iostream>
#include <math.h>
using namespace std;
class number{
friend number operator +(const number& lhs,const number & rhs);
friend number operator -(const number& lhs,const number & rhs);
friend number operator *(const number& lhs,const number & rhs);
friend ostream & operator<<(ostream& os, const number & num);
private:
double real;
double image;
string sign() const{
return (image<0 ? "" : "+");
}
public:
number(double real=0.0,double image=0.0):real(real),image(image){};
//平方
number square(){
return number(real*real-image*image,2*real*image);
}
//取模
double mod(){
return sqrt(real*real+image*image);
}
};
number operator +(const number& lhs,const number & rhs){
return number(lhs.real+rhs.real,lhs.image+rhs.image);
}
number operator -(const number& lhs,const number & rhs){
return number(lhs.real-rhs.real,lhs.image-rhs.image);
}
number operator *(const number& lhs,const number & rhs){
return number(lhs.real*rhs.real-lhs.image*rhs.image,lhs.image*rhs.real+lhs.real*rhs.image);
}
//输出
ostream &
operator<<(ostream& os, const number & num){
os<<num.real<<num.sign()<<num.image<<"i";
return os;
}
int main(){
//举例,计算 3+4i * 5-6i 的结果,并输出
number result=number(3,4)*number(5,-7);
cout<<result<<endl;
//举例,计算 5 - 9-9i 的结果,并输出
result=number(5)-number(9,-9);
cout<<result<<endl;
//举例,计算3+4i的模
cout<<number(3,4).mod()<<endl;
return 0;
}
上述程序运行结果如下:
43-1i
-4+9i
5
追答
编译器太挫了。
建议使用新版本的Visual studio
http://zhidao.baidu.com/question/563157558?&oldq=1
另外,如果使用visual studio 的话,别忘了在第一行加上 #include "stdafx.h"
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询