第八周作業任務一方案三

2021-06-05 17:14:11 字數 2183 閱讀 6616

方案三:在方案二的基礎上,擴充套件+、-、*、/運算子的功能,使之能與double型資料進行運算。設complex c; double d; c?d和d?c的結果為將d視為實部為d的複數同c運算的結果(其中?為+、-、*、/之一)。另外,定義一目運算子-,-c相當於0-c。

#include using namespace std;  

class complex

complex(double r,double i)

complex operator-();

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);

void display();

private:

double real;

double imag;

};

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

上機感言:對double型資料的運用還是一知半解、知識綜合起來運用還是吃力一些。。。

第八周作業任務三

include using namespace std class cfraction void simplify void display cfraction operator const cfraction c 兩個分數相加,結果要化簡 cfraction operator const cfra...

第八周實驗報告(任務1 方案1)

題目介紹 任務1 實現複數類中的運算子過載 定義乙個複數類過載運算子 使之能用於複數的加減乘除。1 方案一 請用類的成員函式完成運算子的過載 class complex complex double r,double i complex operator complex c2 complex ope...

第八周任務(三)

宣告 此任務是老師的答案。總是把博文攢到乙個時間才交上去。include using namespace std class cfraction void simplify void display cfraction operator const cfraction c 兩個分數相加,結果要化簡 ...