*all right reserved.
*檔名稱:test.cpp
*作 者:韓雙志
*完成日期:2023年5月31日
*版本號:v1.0
**問題描述:實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除(運算後再化簡)、比較(6種關係)的運算。
*輸入描述:輸入兩組分數
*輸出描述:輸出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); //兩個分數相除,結果要化簡
cfraction operator+(); //取正一目運算
cfraction operator-(); //取反一目運算
cfraction operator~(); //取倒數一目運算
bool operator>(const cfraction &c);
bool operator
bool operator==(const cfraction &c);
bool operator!=(const cfraction &c);
bool operator>=(const cfraction &c);
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<
// 分數相減
cfraction cfraction:: operator-(const cfraction &c)
// 分數相乘
cfraction cfraction:: operator*(const cfraction &c)
// 分數相除
cfraction cfraction:: operator/(const cfraction &c)
// 分數取正號
cfraction cfraction:: operator+()
// 分數取負號
cfraction cfraction:: operator-()
// 分數取倒數
cfraction cfraction:: operator~()
return x;
}// 分數比較大小
bool cfraction::operator>(const cfraction &c)
// 分數比較大小
bool cfraction::operator
// 分數比較大小
bool cfraction::operator==(const cfraction &c)
// 分數比較大小
bool cfraction::operator!=(const cfraction &c)
int main()
{cfraction x,y,s;
cout<
cin>>x;
cout<
cin>>y;
s=+x+y;
cout<
if (x*/
執行結果:
知識點結構:
分數運算子過載
學習心得
了解了分數運算子過載
分數運算子過載(3)
all right reserved.檔名稱 test.cpp 作 者 韓雙志 完成日期 2016年5月27日 版本號 v1.0 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算,定義分數的一目運算 和 分別代表分數取正和求反,將 按位取反運...
分數運算子的過載
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...
4 運算子過載
什麼是運算子過載 所謂過載,就是重新賦予新的含義。函式過載就是對乙個已有的函式賦予新的含義,使之實現新功能,因此,乙個函式名就可以用來代表不同功能的函式,也就是 一名多用 運算子也可以過載。1為什麼會用運算子過載機制 用複數類舉例 complex c3 c1 c2 原因 complex是使用者自定義...