當前位置:編程學習大全網 - 編程軟體 - 在規定時間內,設計壹個符合C++規範的復數操作類,類名為CComplex,要求完成的作業能正常使用

在規定時間內,設計壹個符合C++規範的復數操作類,類名為CComplex,要求完成的作業能正常使用

#include<iostream>

using namespace std;

class Complex{

double real,imag;

public:

Complex(double re=1,double im=0);

Complex operator+(const Complex& c);

Complex operator-(const Complex& c);

Complex operator*(const Complex& c);

Complex operator/(const Complex& c);

void display();

};

Complex::Complex(double re,double im){

real=re;

imag=im;

}

Complex Complex::operator+(const Complex& c){

Complex t;

t.real=real+c.real;

t.imag=imag+c.imag;

return t;

}

Complex Complex::operator-(const Complex& c){

Complex t;

t.real=real-c.real;

t.imag=imag-c.imag;

return t;

}

Complex Complex::operator*(const Complex &c){

double r,i;

r=real*c.real+imag*c.imag;

i=imag*c.real+real*c.imag;

return Complex(r,i);

}

Complex Complex::operator/(const Complex &c){

double r,i,d;

r=real*c.real+imag*c.imag;

i=imag*c.real+real*c.imag;

d=c.real*c.real+c.imag*c.imag;

if(d>0)

return Complex(r/d,i/d);

else{

cout <<"Error!";

exit(1);

}

}

void Complex::display(){

cout <<"(" <<real <<"," <<imag <<")\n";

}

int main(){

Complex c1(5.5,3.3), c2(6.5, 2.1),c3;

cout <<"c1: "; c1.display();

cout <<"c2: "; c2.display();

c3=c1+c2;

cout <<"c1+c2: "; c3.display();

c3=c1-c2;

cout <<"c1-c2: "; c3.display();

c3=c1*c2;

cout <<"c1*c2: "; c3.display();

c3=c1/c2;

cout <<"c1/c2: "; c3.display();

return 0;

}

  • 上一篇:如何實現兩路電壓或電流差值比較
  • 下一篇:绶ㄥ鏃ヨ獮鏁欑鏇?
  • copyright 2024編程學習大全網