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

2021-07-12 03:31:08 字數 1660 閱讀 2322

問題描述及**:

/*

*檔名稱:hellow.cpp

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

*版本號:v1.0

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

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

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

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

*輸入描述:無

*程式輸出:/

*/#include #include using namespace std;

class cfraction

;cfraction::cfraction(int num,int den):nume(num),deno(den){}

ostream& operator<

void cfraction::simply()

nume/=n;

deno/=n;

if(deno<0)

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

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

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

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

cfraction cfraction::operator+()

cfraction cfraction::operator-()

cfraction cfraction::operator~()

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

bool cfraction::operator

bool cfraction::operator>=(const cfraction &f)

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

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

int main()

{ cfraction x,y,s;//測試函式用一下下老師的嘍~

心得體會:

這段**有個未解決的問題,分數取負那裡編譯有錯誤,而且是一大堆,找了好久也找不到問題出在哪,想把測試沒問題的發上來,等到問題解決了再發文記錄。

第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)

問題及 檔名稱 main.cpp 作 者 王藝霖 完成日期 2016年5月25日 版 本 號 v1.0 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。輸入描述 輸出描述 include include using namespace st...

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

問題及 檔名稱 main.cpp 作 者 王藝霖 完成日期 2016年5月25日 版 本 號 v1.0 問題描述 在 1 的基礎上,實現分數類中的物件和整型數的四則運算。分數類中的物件可以和整型數進行四則運算,且運算符合交換律。例如 cfraction a 1,3 b int i 2 可以完成b a...