1066 C 運算子過載1 分數的加法

2021-10-22 17:37:21 字數 1284 閱讀 4133

題目描述

設計乙個分數類rationalnumber,該類中包括分子和分母兩個成員資料,並具有下述功能:

(1)建立建構函式,它能防止分母為零(分母為0時,輸出"denominator equal zero"),當分數不是最簡形式時進行約分,並避免分母為負數。

(2)過載加法運算子。

輸入

輸入資料第一行為乙個整數t,表示有t組資料。每組資料一行,包含四個整數,分別表示兩個分數a,b的分子和分母:分子 分母 分子 分母。

輸出

對於每一組資料,輸出兩個分數相加的結果,格式參照樣例輸出。

樣例輸入 copy

42 -4 1 4

2 -4 1 -2

2 -4 1 2

2 0 4 6

樣例輸出 copy

-1/2+1/4=-1/4

-1/2-1/2=-1

-1/2+1/2=0

denominator equal zero

# include

using

namespace std;

class

rationalnumber

bool

fmeqzero()

rationalnumber

(int p1,

int p2)

//建構函式

for(

int i =

abs(p1)

; i >

1; i--

)//約分}if

(fm <0)

}void

show()

rationalnumber operator

+(rationalnumber& b)

//運算子過載

private

:int fz;

int fm;};

intmain()

rationalnumber r3 = r1 + r2;

r1.show()

;if(r2.

fzmorethanzero()

) cout <<

"+";

r2.show()

; cout <<

"=";

r3.show()

; cout << endl;

}return0;

}

專案1 分數類中的運算子過載2

問題及 檔名稱 text.cpp 完成日期 2016年5月30日 版本號 vc 6.0 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。輸入描述 程式輸出 include using namespace std class cfractio...

分數中的運算子過載(1)

all right reserved.檔名稱 test.cpp 作 者 韓雙志 完成日期 2016年5月27日 版本號 v1.0 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 比較 6種關係 的運算。輸入描述 輸入兩組分數 輸出描述 輸出6種的結果 includ...

08 3 1分數類中的運算子過載

作 者 王穎 完成日期 2014 年 4 月 14 日 版 本 號 v1.0 輸入描述 無 問題描述 分數類中的運算子過載,在分數類中可以完成分數的加減乘除 程式輸出 略 問題分析 略 演算法設計 略 include include using namespace std class cfracti...