問題及**:
/*
*檔名稱:project.cpp
*作 者:chenqin.
*完成日期:2023年5月20日
*版 本 號:v1.0
**問題描述:(1)定義分數的一目運算+和-,分別代表分數取正和求反,將「按位取反運算子」~過載為分數的求倒數運算。
(2)定義分數類中《和》運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。
*程式輸入:略
*程式輸出:略
*/#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<
bool cfraction::operator
bool cfraction::operator==(const cfraction &c)
bool cfraction::operator!=(const cfraction &c)
int main()
{ cfraction x,y,z;
cout<
cin>>x;
cout<
cin>>y;
z=x+y;
cout<
cout<
執行結果:
學習心得:
注意friend ostream &operator<
第九周 專案三 分數類
檔名稱 完成日期 2014年4月28日 版本號 v0.1 對任務及求解方法的描述部分 輸入描述 無 問題描述 實現分數類中的運算子過載 程式輸入 程式輸出 問題分析 演算法設計 我的程式 include include using namespace std class cftra void sim...
第九周 專案三 分數類中的運算子過載(續)
在分數類中的運算子過載基礎上 1 定義分數的一目運算 和 分別代表分數取正和求反,將 按位取反運算子 過載為分數的求倒數運算。2 定義分數類中 和 運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。檔名稱 test.cpp 作 者 冷基棟 完成日期 2015年 5 ...
第九周專案三 分數類中的運算子過載(續)
在分數類中的運算子過載基礎上 1 定義分數的一目運算 和 分別代表分數取正和求反,將 按位取反運算子 過載為分數的求倒數運算。2 定義分數類中 和 運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。include include using namespace st...