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

2021-07-02 07:34:30 字數 2285 閱讀 5600

在分數類中的運算子過載基礎上

(1)定義分數的一目運算+和-,分別代表分數取正和求反,將「按位取反運算子」~過載為分數的求倒數運算。

(2)定義分數類中《和》運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。

/*

* 檔名稱:test.cpp

* 作    者:冷基棟

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

* 版 本 號:v1.0

*/#include #include using namespace std;

class cfraction

void simplify();

//輸入輸出的過載

friend istream &operator>>(istream &in,cfraction &x);

friend ostream &operator<

cfraction operator+(const cfraction &c);  //兩個分數相加,結果要化簡

cfraction operator-(const cfraction &c);  //兩個分數相減,結果要化簡

cfraction operator*(const cfraction &c);  //兩個分數相乘,結果要化簡

cfraction operator/(const cfraction &c);  //兩個分數相除,結果要化簡

cfraction operator+();  //取正一目運算

cfraction operator-();  //取反一目運算

cfraction operator~();  //取倒數一目運算

bool operator>(const cfraction &c);

bool operator

bool operator==(const cfraction &c);

bool operator!=(const cfraction &c);

bool operator>=(const cfraction &c);

bool operator<=(const cfraction &c);

};// 分數化簡

void cfraction::simplify()

deno/=n;     // 化簡

nume/=n;

if (deno<0)  // 將分母轉化為正數

}// 過載輸入運算子》

istream &operator>>(istream &in,cfraction &x)

return cin;

}// 過載輸出運算子<<

ostream &operator<

// 分數相減

cfraction cfraction:: operator-(const cfraction &c)

// 分數相乘

cfraction cfraction:: operator*(const cfraction &c)

// 分數相除

cfraction cfraction:: operator/(const cfraction &c)

// 分數取正號

cfraction cfraction:: operator+()

// 分數取負號

cfraction cfraction:: operator-()

// 分數取倒數

cfraction cfraction:: operator~()

return x;

}// 分數比較大小

bool cfraction::operator>(const cfraction &c)

// 分數比較大小

bool cfraction::operator

// 分數比較大小

bool cfraction::operator==(const cfraction &c)

// 分數比較大小

bool cfraction::operator!=(const cfraction &c)

int main()

{    cfraction x,y,s;

cout<

cin>>x;

cout<

cin>>y;

s=+x+y;

cout<

if (x執行結果:

學習心得:

好好學習 天天向上

第九周 專案三 分數類

檔名稱 完成日期 2014年4月28日 版本號 v0.1 對任務及求解方法的描述部分 輸入描述 無 問題描述 實現分數類中的運算子過載 程式輸入 程式輸出 問題分析 演算法設計 我的程式 include include using namespace std class cftra void sim...

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

在分數類中的運算子過載基礎上 1 定義分數的一目運算 和 分別代表分數取正和求反,將 按位取反運算子 過載為分數的求倒數運算。2 定義分數類中 和 運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。include include using namespace st...

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

問題及 檔名稱 project.cpp 作 者 chenqin.完成日期 2015年5月20日 版 本 號 v1.0 問題描述 1 定義分數的一目運算 和 分別代表分數取正和求反,將 按位取反運算子 過載為分數的求倒數運算。2 定義分數類中 和 運算子過載,實現分數的輸入輸出,改造原程式中對運算結果...