pat 1088

来源:互联网 发布:淘宝网折800 编辑:程序博客网 时间:2024/06/06 17:12
#include<stdio.h>long long gcd(long long a, long long b){    if (!a)        return b;    if (!b)        return a;    if (a < 0)        a = -a;    if (b < 0)        b = -b;    int tmp;    while (b){        tmp = a % b;        a = b;        b = tmp;    }    return a;}void print(long long a, long long b){    if (!b){        printf("Inf");        return;    }    long long intpart = 0;    intpart = a / b;    a = a % b;    if (a < 0||intpart<0){        putchar('(');        if (intpart || !intpart&&!a){            printf("%lld", intpart);            a = -a;            if (a){                putchar(' ');                printf("%lld/%lld", a, b);            }            a = 0;        }        if (a)            printf("%lld/%lld", a, b);        putchar(')');    }    else {        if (intpart || !intpart&&!a){            printf("%lld", intpart);            if (a){                putchar(' ');                printf("%lld/%lld", a, b);            }            a = 0;        }        if (a)            printf("%lld/%lld", a, b);    }}int main(){    freopen("1.in", "r", stdin);    long long a1, b1, a2, b2, a3, b3;    scanf("%lld/%lld %lld/%lld", &a1, &b1, &a2, &b2);    long long g = gcd(a1, b1);    a1 /= g;    b1 /= g;    g = gcd(a2, b2);    a2 /= g;    b2 /= g;    print(a1, b1);    printf(" + ");    print(a2, b2);    printf(" = ");    b3 = b1*b2/gcd(b1, b2);    a3 = a1*b3 / b1 + a2*b3 / b2;    print(a3, b3);    putchar('\n');    print(a1, b1);    printf(" - ");    print(a2, b2);    printf(" = ");    a3 = a1*b3 / b1 - a2*b3 / b2;    print(a3, b3);    putchar('\n');    print(a1, b1);    printf(" * ");    print(a2, b2);    printf(" = ");    a3 = a1*a2;    b3 = b1*b2;    g = gcd(a3, b3);    a3 /= g;    b3 /= g;    print(a3, b3);    putchar('\n');    print(a1, b1);    printf(" / ");    print(a2, b2);    printf(" = ");    a3 = a1*b2;    b3 = b1*a2;    if (b3 < 0){        a3 = -a3;        b3 = -b3;    }    g = gcd(a3, b3);    a3 /= g;    b3 /= g;    print(a3, b3);    putchar('\n');    return 0;}
0 0
原创粉丝点击