#ifndef fraction_h_included
#define fraction_h_included
#include
class
cfraction
cfraction(const
cfraction &fraction):nume(fraction.nume),deno(fraction.deno){}
//拷貝建構函式
//分數的四則運算
cfraction operator+(cfraction& frac);
cfraction operator-(cfraction& frac);
cfraction operator*(const
cfraction& frac);
cfraction operator/(const
cfraction& frac);
//分數和整數的四則運算
cfraction operator+(int
frac);
cfraction operator-(int
frac);
cfraction operator*(const
intfrac);
cfraction operator/(const
intfrac);
//一目運算子
cfraction operator+();//取正
cfraction operator-();//取反
cfraction operator~();//取倒數
private
: void
correct();
//保持負號在分子上
void
same(cfraction& num);
//通分
void
reduction();
//化簡自己
intgreatestcommondivisor(
int,
int);
//最大公約數
intnume;
//分子
intdeno;
//分母
};
#endif // fraction_h_included
fraction.cpp
[cpp]
view plain
copy
#include "fraction.h"
//輸入輸出運算子的過載放在標頭檔案會出錯
std::istream& operator>>(std::istream& is, cfraction& obj)
std::ostream& operator<
//通分是兩個分數物件,化簡是乙個分數
intcfraction::greatestcommondivisor(
intnum1,
intnum2)
//最大公約數
return
num2;
} void
cfraction::reduction()
//化簡自己
void
cfraction::same(cfraction& num)
//通分
void
cfraction::correct()
} //分數和之間的四則元算
cfraction cfraction::operator*(const
cfraction& frac)
cfraction cfraction::operator/(const
cfraction& frac)
cfraction cfraction::operator+(cfraction& frac)
cfraction cfraction::operator-(cfraction& frac)
//分數和整數的四則運算
cfraction cfraction::operator*(int
frac)
cfraction cfraction::operator/(int
frac)
cfraction cfraction::operator+(int
frac)
cfraction cfraction::operator-(int
frac)
//整數和分數的四則運算
cfraction operator*(int
ifrac, cfraction& ffrac)
cfraction operator/(int
ifrac, cfraction& ffrac)
cfraction operator+(int
ifrac, cfraction& ffrac)
cfraction operator-(int
ifrac, cfraction& ffrac)
//一目運算子
cfraction cfraction::operator+()
cfraction cfraction::operator-()
cfraction cfraction::operator~()
main.cpp
[cpp]
view plain
copy
#include "fraction.h"
using
namespace
std;
intmain()
分數類的運算子過載
問題及 檔名稱 test.cpp 作 者 李盈盈 完成日期 2015年 05 月 07 日 版 本 號 v1.0 問題描述 實現分數類的運算子過載,在分數中可以實現分數的加減乘除 運算後再化簡 比較的運算。輸入描述 無 程式輸出 按要求輸出。include using namespace std c...
分數運算子的過載
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...
8 3 實現分數類中的運算子過載
對任務及求解方法的描述部分 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的 加減乘除 運算後再化簡 求反 比較 6種關係 的運算。程式頭部的注釋結束 includeusing namespace std class cfraction 建構函式,初始化用 cfraction cfrac...