第九周專案1 複數類中的運算子過載(續)

2021-07-02 19:31:00 字數 2530 閱讀 9379

問題及**:

/**檔名稱:test.cpp

*完成日期:2023年5月24日

*版本號:v1.0

**問題描述:在第8周的專案1的基礎上:a.再定義一目運算子-,-c相當於0-c;定義complex類中的《和》運算子的過載,實現輸入和輸出。

*輸入描述:

*程式輸出:

*/#include using namespace std;

class complex

complex(double r,double i)

complex operator-();

//實現輸入、輸出的運算子過載

friend ostream& operator << (ostream& output, const complex& c);

friend istream& operator >> (istream& input, complex& c);

//實現加減乘除的運算子過載

friend complex operator+(complex &c1, complex &c2);

friend complex operator+(double d1, complex &c2);

friend complex operator+(complex &c1, double d2);

friend complex operator-(complex &c1, complex &c2);

friend complex operator-(double d1, complex &c2);

friend complex operator-(complex &c1, double d2);

friend complex operator*(complex &c1, complex &c2);

friend complex operator*(double d1, complex &c2);

friend complex operator*(complex &c1, double d2);

friend complex operator/(complex &c1, complex &c2);

friend complex operator/(double d1, complex &c2);

friend complex operator/(complex &c1, double d2);

private:

double real;

double imag;

};//實現輸出的運算子過載

ostream& operator << (ostream& output, const complex& c)

while(!((sign=='+'||sign=='-')&&i=='i'));

c.real=a;

c.imag=(sign=='+')?b:-b;

return input;

}complex complex::operator-()

//複數相加:(a+bi)+(c+di)=(a+c)+(b+d)i.

complex operator+(complex &c1, complex &c2)

complex operator+(double d1, complex &c2)

complex operator+(complex &c1, double d2)

//複數相減:(a+bi)-(c+di)=(a-c)+(b-d)i.

complex operator-(complex &c1, complex &c2)

complex operator-(double d1, complex &c2)

complex operator-(complex &c1, double d2)

//複數相乘:(a+bi)(c+di)=(ac-bd)+(bc+ad)i.

complex operator*(complex &c1, complex &c2)

complex operator*(double d1, complex &c2)

complex operator*(complex &c1, double d2)

//複數相除:(a+bi)/(c+di)=(ac+bd)/(c^2+d^2) +(bc-ad)/(c^2+d^2)i

知識點總結:應用輸入和輸出運算子的過載方法

學習心得:學習逐漸積累的過程

第九周 專案1 複數類中的運算子過載

問題及 專案1 複數類中的運算子過載 續 all right reserved 檔名 學生成績統計 作者 童宇 完成日期 2015 年 5 月 13 日 版本號v1.0 問題描述 1 再定義一目運算子 c相當於0 c。2 定義complex類中的 和 運算子的過載,實現輸入和輸出,改造原程式中對運算...

第九周 專案1 複數類中的運算子過載(續)

問題及 all right reserved,檔名 test.cpp 完成日期 2015年5月12日 版本號 v1.0 問題描述 再定義一目運算子 c相當於0 c。定義complex類中的 和 運算子的過載,實現輸入和輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。輸入描述 程式輸出 in...

第九周專案1 複數類中的運算子過載(續)

問題及 檔名稱 project.cpp 作 者 陳文青 完成日期 2015年5月13日 版 本 號 v1.0 問題描述 1 再定義一目運算子 c相當於0 c。2 定義complex類中的 和 運算子的過載,實現輸入和輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。程式輸入 程式輸出 inc...