第八周上機實踐專案3 分數類中的運算子過載(2)

2021-07-02 01:57:00 字數 1559 閱讀 6878

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

問題及**

/** 檔名稱:test.cpp

* 作 者:辛彬

* 完成日期:2015 年 4 月 26 日

* 版 本 號:v1.0

*/#includeusing namespace std;

class cfraction

cfraction(int n,int d):nume(n),deno(d) {}

void simplify();

void display();

cfraction operator+(cfraction &c);

friend cfraction operator+(cfraction &c,int a);

friend cfraction operator+(int a,cfraction &c);

cfraction operator-(cfraction &c);

friend cfraction operator-(cfraction &c,int a);

friend cfraction operator-(int a,cfraction &c);

cfraction operator*(cfraction &c);

friend cfraction operator*(cfraction &c,int a);

friend cfraction operator*(int a,cfraction &c);

cfraction operator/(cfraction &c);

friend cfraction operator/(cfraction &c,int a);

friend cfraction operator/(int a,cfraction &c);

bool operator>(cfraction &c);

bool operator<(cfraction &c);

bool operator==(cfraction &c);

bool operator>=(cfraction &c);

bool operator<=(cfraction &c);

bool operator!=(cfraction &c);

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

void cfraction::simplify()

void cfraction::display()

else

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

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

int main()

{ cfraction x(1,3),y(-5,10),s;

cout<<"分數x=1/3 y=-5/10"

第八周上機實踐專案3 分數類的運算子過載(1)

1 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。可以在第4周分數類 的基礎上開始工作。問題及 檔名稱 test.cpp 作 者 辛彬 完成日期 2015 年 4 月 26 日 版 本 號 v1.0 includeusing namespace s...

第八周上機實踐 專案3 順序串演算法

檔名稱 test.cpp 完成日期 2015年10月23日 版本 v1.0 問題描述 採用順序儲存方式儲存串,實現下列演算法並測試。輸入描述 各個演算法 程式輸出 所得結果 標頭檔案sqstring.h見順序串演算法庫 1 試編寫演算法實現將字串s中所有值為c1的字元換成值為c2的字元 void t...

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

1 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。可以在第4周分數類 的基礎上開始工作。cpp view plaincopyprint?在code上檢視 片派生到我的 片 class cfraction private int nume 分子 in...