分數類的運算子過載

2021-07-02 07:02:39 字數 2925 閱讀 2932

問題及**:

/* 

* 檔名稱:test.cpp

* 作 者:李盈盈

* 完成日期:2023年 05 月 07 日

* 版 本 號:v1.0

* * 問題描述:實現分數類的運算子過載,在分數中可以實現分數的加減乘除(運算後再化簡),比較的運算。

* 輸入描述:無

* 程式輸出:按要求輸出。

*/ #include using namespace std;

class cfraction

void simplify();

void display();

friend cfraction operator+(const cfraction &c1, const cfraction &c2);

friend cfraction operator-(const cfraction &c1, const cfraction &c2);

friend cfraction operator*(const cfraction &c1, const cfraction &c2);

friend cfraction operator/(const cfraction &c1, const cfraction &c2);

friend cfraction operator+(const cfraction &c, int i);

friend cfraction operator+(int i, const cfraction &c );

friend cfraction operator-(const cfraction &c, int i);

friend cfraction operator-(int i, const cfraction &c );

friend cfraction operator*(const cfraction &c, int i);

friend cfraction operator*(int i, const cfraction &c );

friend cfraction operator/(const cfraction &c, int i);

friend cfraction operator/(int i, const cfraction &c );

cfraction operator+();

cfraction operator-();

friend bool operator>(const cfraction &c1, const cfraction &c2);

friend bool operator

friend bool operator==(const cfraction &c1, const cfraction &c2);

friend bool operator!=(const cfraction &c1, const cfraction &c2);

friend bool operator>=(const cfraction &c1, const cfraction &c2);

friend bool operator<=(const cfraction &c1, const cfraction &c2);

friend bool operator>(const cfraction &c, int i);

friend bool operator>(int i, const cfraction &c);

friend bool operator

friend bool operator

friend bool operator==(const cfraction &c, int i);

friend bool operator==(int i, const cfraction &c);

friend bool operator!=(const cfraction &c, int i);

friend bool operator!=(int i, const cfraction &c);

friend bool operator>=(const cfraction &c, int i);

friend bool operator>=(int i, const cfraction &c);

friend bool operator<=(const cfraction &c, int i);

friend bool operator<=(int i, const cfraction &c);

};// 分數化簡

void cfraction::simplify()

deno/=n;

nume/=n;

if (deno<0)

}//顯示分數

void cfraction::display()

bool operator>(const cfraction &c, int i)

bool operator>(int i, const cfraction &c)

bool operator

bool operator==(const cfraction &c, int i)

bool operator==(int i, const cfraction &c)

bool operator!=(const cfraction &c, int i)

bool operator!=(int i, const cfraction &c)

bool operator>=(const cfraction &c, int i)

bool operator<=(int i, const cfraction &c)

int main()

執行結果:

分數類中的運算子過載

ifndef fraction h included define fraction h included include class cfraction cfraction const cfraction fraction nume fraction.nume deno fraction.deno...

分數運算子的過載

include using namespace std int fn int a,int b class fraction 分數類宣告 public 外部介面 fraction int fz 0,int fm 0 建構函式 friend fraction operator fraction c1,f...

分數運算子過載(3)

all right reserved.檔名稱 test.cpp 作 者 韓雙志 完成日期 2016年5月27日 版本號 v1.0 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算,定義分數的一目運算 和 分別代表分數取正和求反,將 按位取反運...