有理数加法C++结构体来解决

下面的 add 函数将分数 x 的分子和分母分别加1后返回:





#include <iostream>
using namespace std;
struct rationalNumber{
    int fenzi;     // 分子
    int fenmu;     // 分母
};
rationalNumber add(rationalNumber x)
{
    x.fenzi++;     // 分子加 1
    x.fenmu++;     // 分母加 1
    return x;     // 返回结果
}
int main()
{
    rationalNumber a ={23,56}, b ;
    b=add(a);     // 调用add 函数
    cout << b.fenzi << "/" << b.fenmu << endl;     // 输出返回值
    return 0;
}

输出结果为:24/57。

温馨提示:结构变量作为一种新的数据类型,可以和预定义类型一样使用。

编程要求
在右侧编辑器中的Begin-End之间补充代码,实现两个有理数(数据由平台提供,已在主函数中获取)的相加并返回结果且返回的结果必须是最简分数。

测试说明
平台会对你编写的代码进行测试,比对你输出的数值与实际正确数值,只有所有数据全部计算正确才能通过测试:

测试输入:-1/2 5/6
预期输出:1/3

测试输入:-3/6 12/24
预期输出:0

做分数加减就得对分子分母进行通分。
用辗转相除法 求出结果分数的最小公倍数,进行约分。