简单题
#include < iostream >
#include < cstdio >
#include < cstdlib >
#include < cstring >
using namespace std;
int gcd( int x, int y)
{
if ( ! x || ! y)
return x > y ? x : y;
for ( int t; t = x % y; x = y, y = t)
;
return y;
}
int main()
{
// freopen("t.txt", "r", stdin);
int a, b, c, d, e, f, g;
char op;
while (scanf( " %d/%d%c%d/%d " , & a, & b, & op, & c, & d) != EOF)
{
f = b * d;
if (op == ' + ' )
e = a * d + b * c;
else
e = a * d - b * c;
g = gcd(abs(e), abs(f));
e /= g;
f /= g;
if (f < 0 )
{
e *= - 1 ;
f *= - 1 ;
}
if (f == 1 )
printf( " %d\n " , e);
else
printf( " %d/%d\n " , e, f);
}
return 0 ;
}