/*
* all right reserved.
* 版本號:v1.0
** 問題描述:請用類的成員函式,定義複數類過載運算子+、-、*、/,使之能用於複數的加減乘除
*程式輸入:
*程式輸出:輸出c1、c2、c1+c2、c1-c2......
*/#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& intput,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
complex operator/(complex &c1, complex &c2)
complex operator/(double d1, complex &c2)
complex operator/(complex &c1, double d2)
int main()
{ complex c1,c2,c3;
double d=11;
cout
cout
cout<
測試圖示:
第九周(專案一) 實現複數類中的運算子過載。
02.02.煙台大學計算機學院學生 03.03.all right reserved.04.04.檔名稱 煙台大學計算機學院學生 05.05.all right reserved.06.06.檔名稱 實現複數類中的運算子過載 08.08.完成日期 2013年4月22日 09.09.版本號 v1.0 ...
第九周 專案一 複數類中的運算子過載(續)
問題及 檔名稱 test.cpp 完成日期 2015年4月29日 版本號 v1.0 問題描述 在複數類中的運算子過載基礎上 1 再定義一目運算子 c相當於0 c。2 定義complex類中的 和 運算子的過載,實現輸入和輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。輸入描述 略 程式輸出...
第九周專案一 複數類中的運算子過載(續)
檔名稱 test.cpp 作 者 陳丹 完成日期 2015年5月8日 版本號 v1.0 問題描述 在複數類中的運算子過載基礎上 1 再定義一目運算子 c相當於0 c。2 定義complex類中的 和 運算子的過載,實現輸入和輸出 輸入描述 程式輸出 include using namespace s...