第二學期第九周專案3 分數類

2021-06-21 22:54:25 字數 2222 閱讀 5030

/*

* 作 者:沈遠巨集

* 完成日期:2014 年 4 月 18 日

* 版 本 號:v1.0

* 輸入描述: 無

* 問題描述:實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除(運算後再化簡)、比較(6種關係)的運算。可以以第5周專案2的**為基礎開始工作.

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

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

* 程式輸出:略

*/#include using namespace std;

class cfraction

//建構函式,初始化用

void set(int nu,int de);//賦值

void simplify(); //化簡

void output();

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

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

friend cfraction operator~(cfraction &a);//倒數

friend cfraction operator+(cfraction &a,cfraction &b);// +

friend cfraction operator+(cfraction &a);//求正

friend cfraction operator-(cfraction &a,cfraction &b);// -

friend cfraction operator-(cfraction &a);//取反

friend cfraction operator*(cfraction &a,cfraction &b);// *

friend cfraction operator/(cfraction &a,cfraction &b);// /

friend bool operator>(cfraction &a,cfraction &b);

friend bool operator

friend bool operator==(cfraction &a,cfraction &b);

friend bool operator!=(cfraction &a,cfraction &b);

friend bool operator>=(cfraction &a,cfraction &b);

friend bool operator<=(cfraction &a,cfraction &b);

//建構函式及運算子過載的函式宣告

};ostream& operator << (ostream& output,cfraction &c)

void cfraction::set(int nu,int de)//賦值

void cfraction::simplify() //化簡

else if(a.nume>0)

}return c;

}cfraction operator*(cfraction &a,cfraction &b)// *

cfraction operator/(cfraction &a,cfraction &b)// /

bool operator>(cfraction &a,cfraction &b)

else

}bool operator==(cfraction &a,cfraction &b)

else

}bool operator!=(cfraction &a,cfraction &b)

else

}bool operator>=(cfraction &a,cfraction &b)

else

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

int main()

{ cfraction c,s;

cout<

cin>>c;

s=+c;

cout<

執行結果:

心得體會:

其實覺得分數類做的比較糙。。看那個分母帶-號覺得異常不爽

第九周 專案三 分數類

檔名稱 完成日期 2014年4月28日 版本號 v0.1 對任務及求解方法的描述部分 輸入描述 無 問題描述 實現分數類中的運算子過載 程式輸入 程式輸出 問題分析 演算法設計 我的程式 include include using namespace std class cftra void sim...

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

程式的版權和版本宣告部分 檔名稱 分數類中的運算子過載 作 者 馮冬影 完成日期 2014 年 4月 22日 版 本 號 v1.0 對任務及求解方法的描述部分 輸入描述 問題描述 程式輸出 include includeusing namespace std class cfraction ostr...

第二學期第五周專案2 分數類的雛形

作 者 沈遠巨集 完成日期 2013 年 03月25日 版 本 號 v1.0 問題描述 設計乙個簡單的分數類,完成對分數的幾個運算。置值 化簡 使分子分母沒有公因子 放大n倍 輸出 以8 6為例,style為0時,原樣輸出8 6 style為1時,輸出1 1 3 形式,表示一又三分之一 style為...