[C++ ] 跨年禮物之二

看板NTUBIME104HW作者 (大佐)時間12年前 (2012/01/01 00:44), 編輯推噓2(203)
留言5則, 2人參與, 最新討論串1/1
class Fractions{ public: Fractions(){ numerator = 1; denominator = 1; }//建構子 初始化分子分母的數值 int numerator; int denominator; void sum(Fractions &a, Fractions &b){ int tmp, x, y, GCD; int D, N; x = a.denominator; y = b.denominator; for(;x&&y;x%=y,tmp=x,x=y,y=tmp); GCD = x > 0 ? x : y; //找出最大公因數 D = a.denominator * b.denominator / GCD; N = a.numerator * D / a.denominator + b.numerator * D / b.denominator; x = D; y = N; for(;x&&y;x%=y,tmp=x,x=y,y=tmp); GCD = x > 0 ? x : y; //找出最大公因數 (輾轉相除法) a.denominator = D / GCD; a.numerator = N / GCD; //對最後的結果約分 } void display(void){ try{ throw denominator; } catch(int e){ if(e) cout << numerator << "/" << denominator << endl; } //印出分數 } }; 只放加法部分 其他三種運算還是要大家想一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.70.209.87

01/01 00:45, , 1F
請在參考程式碼的時候盡量低調 然後不要在電腦教室
01/01 00:45, 1F

01/01 00:45, , 2F
看被助教發現OAO
01/01 00:45, 2F

01/01 00:47, , 3F
咦?
01/01 00:47, 3F

01/01 00:52, , 4F
try catch用的不對
01/01 00:52, 4F

01/01 01:11, , 5F
其實try catch 是亂寫的啊zz 那裡沒刪掉...
01/01 01:11, 5F
文章代碼(AID): #1E_plc52 (NTUBIME104HW)