分數類的乘法

2021-09-24 20:26:39 字數 808 閱讀 7529

problem e: 分數類的乘法time limit: 3 sec memory limit: 128 mb

submit: 3343 solved: 2581

[submit][status]description封裝乙個分數類fract,用來處理分數功能和運算,支援以下操作:

構造:傳入兩個引數n和m,表示n/m;分數在構造時立即轉化成最簡分數。

show()函式:分數輸出為「a/b」或「-a/b」的形式,a、b都是無符號整數。若a為0或b為1,只輸出符號和分子,不輸出「/」和分母。

在分數類上過載乘法運算子,進行分數的乘法運算

input輸入多行,每行四個整數n、m、q、p,分別為兩個分數n/m和q/p,至eof結束。輸入的分母不會為0;

output每行輸出乙個分數,為n/m和q/p的乘積,與輸入順序一致。

分數輸出時為最簡形式,負號只會出現在最前面,若分母為1或分子為0,則只輸出乙個整數,即分子部分,而沒有「/」和分母部分。

#include #include using namespace std;

class fract

min1 = (nn - mm) <= 0 ? nn : mm;

}if( flag==-1 )

nn = -nn;

n = nn; m =mm;

}public:

void show() const

public:

fract  operator *(const fract & a)

}; int main()

}

分數類的雛形

作 者 張來鑫 完成日期 2014 年 3 月30日 版 本 號 v1.0 問題描述 分數 include using namespace std class cfraction int main cfraction cfraction int nu,int de void cfraction se...

分數類的實現

實現乙個分數類,並過載其加減運算 include include using namespace std class fraction 無參建構函式 fraction int,int void set int aa,int bb 設定分子分母 void show 顯示分數 fraction add ...

實現分數類的過載

程式頭部注釋開始 程式的版權和版本宣告部分 檔名稱 作 者 苗影 完成日期 2012 年 4 月 10 日 版 本 號 對任務及求解方法的描述部分 輸入描述 問題描述 程式輸出 程式頭部的注釋結束 includeusing namespace std class cfraction void sim...