求两个分数的最小公倍数

来源:互联网 发布:网络连接ip冲突怎么办 编辑:程序博客网 时间:2024/06/05 21:11
#include<stdio.h>long long gcd(long long a, long long b){    return a % b == 0? b:gcd(b, a%b);}void remove(long long &a, long long &b){    long long tmp = a > b?gcd(a, b):gcd(b, a);    a = a/tmp;    b = b/tmp;}int main(){    long long n, a, b, c, d;    scanf("%lld", &n);    while(n--)    {        scanf("%lld/%lld %lld/%lld", &a, &b, &c, &d);        remove(a, b);        remove(c, d);        long long fenzi = (a*c)/gcd(a, c);        long long fenmu = gcd(b,d);         if(fenzi%fenmu)        {            printf("%lld/%lld\n", fenzi, fenmu);        }        else            printf("%lld\n", fenzi/fenmu);    }    return 0;}

0 0
原创粉丝点击