【数学基础】最简分数

来源:互联网 发布:论文中的财务报表数据 编辑:程序博客网 时间:2024/05/22 07:05

最简分数

Time Limit 1000ms

Memory Limit 65536K

description

给定4个正整数a,b,c,d,它们的范围均小于10000,求a/b + c/d的值,要求化为最简分数。

input

输入数据有多组,每组1行,即a,b,c,d。

output

输出占一行,请看样例。

sample_input

1 2 1 3

sample_output

5/6


#include <stdio.h>#include <stdlib.h>long long GCD(long long a,long long b);long long LCM(long long a,long long b);main(){    long long num1,num2,lcm,gcd,m,n,sum;    long long a1,a2;    while(scanf("%lld%lld%lld%lld",&a1,&num1,&a2,&num2)!=EOF)    {        lcm=LCM(num1,num2);        m=a1*(lcm/num1);        n=a2*(lcm/num2);        sum=m+n;        gcd=GCD(sum,lcm);        sum=sum/gcd;        lcm=lcm/gcd;        printf("%lld/%lld\n",sum,lcm);    }}long long GCD(long long num1,long long num2){    if (num1%num2==0)    {        return num2;    }    else        return GCD( num2,num1%num2) ;}long long LCM(long long a,long long b){    long long temp_lcm;    temp_lcm=a/GCD(a,b)*b;    return temp_lcm;}


0 0
原创粉丝点击