zerojudge b538: 分數運算-2
zerojudge b538: 分數運算-2
題意:
計算兩分數
輸入:
多組測資,以EOF結束
每組測資有 a,b,c,d 和@(四則運算中的一個運算子(+,-,*,/))
輸出:
列印#e/f,
其中a/b @ c/d = #e/f,
其中#為負號或""(如:不可列印出5/-3)
其中e,f>0,e/f為最簡分數
,當f為1,只能列印出e
,當e等於0時請列印出0
測資輸入:
1 3 1 3 +
1 3 1 3 *
1 3 1 3 /
1 3 1 3 -
1 3 2 3 +
2 3 1 3 /
1 3 2 3 -
1 3 0 3 *
測資輸出://為備註
2/3
1/9
1 //不為1/1
0 //不為0/3
1 //不為1/3
2 //不為2/1
-1/3 //不為1/-3
0 //不為0/9
解法:
用通分算出e/f然後將e/f約分
我的方法是先讓分母為b*d而不是LCM(b,d);反正最後要約分
註:不可用浮點數算會有誤差
Comments
Post a Comment