1621: 分数求和
金币值:1
定数:1
时间限制:1.000 s
内存限制:128 M
正确:1
提交:251
正确率:0.40% 命题人:
题目描述
设计一个分数类Fraction,能实现两个分数加、减、乘、除运算。UML图如下:
其中,fenzi和fenmu分别表示分数的分子和分母,add()、substract()、multiply()和divide()分别表示两个分数的加减乘除运算,simplize()是化简一个分数。
在Main类的main方法中实现:输入2个分数的分子和分母,进行求和运算,并用化成最简形式表示(分子分母互质;若最终结果的分母为1,则直接用整数表示)。如:7/3均是最简形式,而3/6需要化简为1/2, 3/1需要化简为3。分子和分母均不为0,也不为负数。
输入格式
2行,每行一个分数,用"p/q"的形式表示,不含空格,p,q均不超过1000
输出格式
输出只有一行,即最终结果的最简形式。若为分数,用"p/q"的形式表示。
输入样例1 复制
1/2
1/3
输出样例1 复制
5/6
输入样例2 复制
4/3
5/3
输出样例2 复制
3
输入样例3 复制
1/4
1/4
输出样例3 复制
1/2
提示
求最大公约数:
int gcd(int m,int n){
int r=m%n;
while(r>0){
m=n;=r;r=m%n;
}
return n;
}