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

2021-07-02 15:25:13 字數 1761 閱讀 7091

專案3-分數類中的運算子過載(續))】

在第8周專案3基礎上

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

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

/*

* all right reserved.

* 檔案:demo.cpp

* 版本號: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<

// 分數比較大小

bool cfraction::operator

// 分數比較大小

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

// 分數比較大小

第九周 專案3 分數類的運算子過載

程式的版權和版本宣告部分 檔名稱 分數類中的運算子過載 作 者 馮冬影 完成日期 2014 年 4月 22日 版 本 號 v1.0 對任務及求解方法的描述部分 輸入描述 問題描述 程式輸出 include includeusing namespace std class cfraction ostr...

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

檔名稱 test.cpp 作 者 呼亞萍 完成日期 2015年5月13日 版 本 號 v1.0 問題描述 定義分數的一目運算 和 分別代表分數取正和求反,將 按位取反運算子 過載為分數的求倒數運算。定義分數類中 和 運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。...

第二學期第九周專案3 分數類

作 者 沈遠巨集 完成日期 2014 年 4 月 18 日 版 本 號 v1.0 輸入描述 無 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。可以以第5周專案2的 為基礎開始工作.1 定義分數的一目運算 和 分別代表分數取正和求反,將 按...