第13周 專案1 分數類中的運算子過載(1)

2021-07-12 01:47:37 字數 1278 閱讀 6394

問題及**:

*檔名稱:main.cpp

*作 者:王藝霖

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

*版 本 號:v1.0

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

*輸入描述:

*輸出描述:

*/#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);

bool operator>(const cfraction &c);

bool operator

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

{ if (nume*c.deno>x;

cout<

cin>>y;

s=x+y;

cout<

if (x

執行結果:

知識點總結:

在類的非靜態成員函式中返回類物件本身的時候,直接使用return *this。

if(!c.nume) 表示當c.nume=0時執行迴圈,其等價於if(c.nume==0)。



第13周專案1 分數類中的運算子過載

include include using namespace std class cfraction void simplify 輸入輸出的過載 friend istream operator istream in,cfraction x friend ostream operator cfrac...

第13周專案1 分數類中的運算子過載(1)

檔名稱 第13周專案1 分數類中的運算子過載 1 完成日期 2016.5.26 版本號 v1.0 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再簡化 比較 6周關係 的運算。輸入描述 程式輸出 include includeusing namespace std cl...

第13周專案1 分數類中的運算子過載 (1)

include includeusing namespace std class cfraction cfraction operator const cfraction c1 cfraction operator const cfraction c1 cfraction operator cons...