2015年第九周项目一:复数类中的运算符重载(续)(2)
来源:互联网 发布:旅游网站实时数据来源 编辑:程序博客网 时间:2024/05/23 22:49
#include <iostream>using namespace std;class Complex{public: Complex() { real=0; imag=0; } Complex(double r,double i) { real=r; imag=i; } Complex operator+(const Complex &c2); Complex operator-(const Complex &c2); Complex operator*(const Complex &c2); Complex operator/(const Complex &c2); Complex operator-(); friend ostream& operator<<(ostream&,Complex&); friend istream& operator>>(istream&,Complex&); void display();private: double real; double imag;};//下面定义成员函数//复数相加: (a+bi)+(c+di)=(a+c)+(b+d)i.ostream& operator<<(ostream&output,Complex&c){ output<<"("<<c.real<<","<<c.imag<<"i"<<")"; return output;}istream& operator>>(istream&input,Complex&c){ input>>c.real>>c.imag; return input;}Complex Complex::operator-(){ real=-real; imag=-imag; return *this;}Complex Complex::operator+(const Complex &c2){ Complex c; c.real=real+c2.real; c.imag=imag+c2.imag; return c;}//复数相减:(a+bi)-(c+di)=(a-c)+(b-d)i.Complex Complex::operator-(const Complex &c2){ Complex c; c.real=real-c2.real; c.imag=imag-c2.imag; return c;}//复数相乘:(a+bi)(c+di)=(ac-bd)+(bc+ad)i.Complex Complex::operator*(const Complex &c2){ Complex c; c.real=real*c2.real-imag*c2.imag; c.imag=imag*c2.real+real*c2.imag; return c;}//复数相除:(a+bi)/(c+di)=(ac+bd)/(c^2+d^2) +(bc-ad)/(c^2+d^2)iComplex Complex::operator/(const Complex &c2){ Complex c; c.real=(real*c2.real+imag*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag); c.imag=(imag*c2.real-real*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag); return c;}void Complex::display(){ cout<<"("<<real<<","<<imag<<"i)"<<endl;}//下面定义用于测试的main()函数int main(){ Complex c1(3,4),c2(5,-10),c3,c4; cout<<c1<<'\n'; cout<<c2<<'\n'; cout<<c3<<'\n'; c1=-c1; c1.display(); cout<<"c2="; cout<<c2<<'\n'; c3=c1+c2; cout<<"c1+c2="; cout<<c3<<'\n'; c3=c1-c2; cout<<"c1-c2="; cout<<c3<<'\n'; c3=c1*c2; cout<<"c1*c2="; cout<<c3<<'\n'; c3=c1/c2; cout<<"c1/c2="; cout<<c3<<'\n'; cin>>c4; cout<<c4; return 0;}
0 0
- 2015年第九周项目一:复数类中的运算符重载(续)(2)
- 2014年第九周项目一:复数类中的运算符重载(续)
- 第九周项目一复数类中的运算符重载(续)(2)
- 第九周项目一复数类中的运算符重载(续)(1)
- 第九周 项目一:复数类中的运算符重载(续)
- 第九周项目一: 复数类中的运算符重载(续)
- 第九周项目一——复数类中的运算符重载(续)
- 第九周 项目一-复数类中的运算符重载(续)
- 15第九周项目一——复数类中的运算符重载(续)
- 第九周项目一--复数类中的运算符重载(续)
- 第九周 课后实践:项目一——复数类中的运算符重载(续)
- 第九周项目一 复数类中的运算符重载(续)
- 第九周项目一:复数类中的运算符重载(续)
- 第九周 项目一 复数类中的运算符重载(续)
- 第九周项目一复数类中的运算符重载(续)
- 第九周项目一-复数类的中的运算符重载(续)
- 第九周项目一 复数类中的运算符重载(续)
- 第九周 项目一 复数类中的运算符重载(续)
- 第8周项目3-分数类的运算符重载(续)
- 第九周 【项目2-Time类中的运算符重载(续)】
- Rust猜数字之处理猜测
- 第九周项目一 复数问题 增加一目- 与重载<<和>>
- 运载符重载(友元函数)
- 2015年第九周项目一:复数类中的运算符重载(续)(2)
- 第9周项目1-复数类中的运算符重载(续)
- source insight 的一些快捷键
- 第九周项目4 我的向量类
- 玩命牛的成长记录(十七)——建库
- 黑马程序员——第一章 Java开发前奏
- 2015.5.13复数类的运算符重载(续)
- C#调用CMD创建WIFI热点
- 第九周项目1:复数类中的运算符重载(续)