HUFEOJ正在加载中...

1621: 分数求和

金币值:1 定数:1 时间限制:1.000 s 内存限制:128 M
正确:1 提交:251 正确率:0.40% 命题人:
点赞量:0 收藏量:0 题目类型:程序 知识点: java-类和对象

题目描述

设计一个分数类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;

}