專案37 分數類中的運算子過載

2021-07-12 07:07:52 字數 2016 閱讀 7256

(1)實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除(運算後再化簡)、比較(6種關係)的運算。

class

cfraction

;//過載函式的實現及用於測試的main()函式

(2)在(1)的基礎上,實現分數類中的物件和整型數的四則運算。分數類中的物件可以和整型數進行四則運算,且運算符合交換律。例如:cfraction a(1,3),b; int i=2; 可以完成b=a+i;。同樣,可以完成i+a, 45+a, a*27, 5/a等各種運算。 

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

(4)定義

執行**:

#include using namespace std;

class cfraction

void simplify();

void set(int n,int d);

cfraction operator+(const cfraction &c);

cfraction operator-(const cfraction &c);

cfraction operator*(const cfraction &c);

cfraction operator/(const cfraction &c);

bool operator>(const cfraction &c);

bool operator<(const cfraction &c);

bool operator==(const cfraction &c);

bool operator!=(const cfraction &c);

bool operator>=(const cfraction &c);

bool operator<=(const cfraction &c);

cfraction operator+();

cfraction operator-();

cfraction operator~();

friend ostream &operator<<(ostream &out,cfraction c);

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

};void cfraction::set(int n,int d)

ostream &operator<<(ostream &out,cfraction x)

cfraction cfraction:: operator+()

cfraction cfraction:: operator-()

cfraction cfraction:: operator~()

return x;

}void cfraction::simplify()

deno/=i;

nume/=i;

}cfraction cfraction::operator+(const cfraction &c)

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

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

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

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

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

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

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

int main()

{ cfraction x,y,s;

x.set(1,4);

y.set(1,5);

s=x+y;

coutif (x

專案3 分數類中的運算子過載

corpyright c 2013,煙台大學計算機學院 all right reseved.完成日期 2014年4月15日 版本號 v1.0 輸入描述 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。程式輸出 問題分析 演算法設計 incl...

08 3 1分數類中的運算子過載

作 者 王穎 完成日期 2014 年 4 月 14 日 版 本 號 v1.0 輸入描述 無 問題描述 分數類中的運算子過載,在分數類中可以完成分數的加減乘除 程式輸出 略 問題分析 略 演算法設計 略 include include using namespace std class cfracti...

專案1 分數類中的運算子過載2

問題及 檔名稱 text.cpp 完成日期 2016年5月30日 版本號 vc 6.0 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。輸入描述 程式輸出 include using namespace std class cfractio...