#include<iostream>
using namespace std;
void gys(long long &a, long long &b);
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2,long long k,long long a,long long b);
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2);
char c;
int main()
{
long long a1,a2,a, k1,k2,k,b1,b2,b;
char s;
cin>>a1>>c>>b1;
cin>>a2>>c>>b2;
gys(a1,b1);
gys(a2,b2);
k1=a1/b1;
a1=a1-k1*b1;
k2=a2/b2;
a2=a2-k2*b2;
s='+';
a=(a1+k1*b1)*b2+(a2+k2*b2)*b1;
b=b1*b2;
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
cout<<endl;
s='-';
a=(a1+k1*b1)*b2-(a2+k2*b2)*b1;
b=b1*b2;
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
cout<<endl;
s='*';
a=(a1+k1*b1)*(a2+k2*b2);
b=b1*b2;
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
cout<<endl;
s='/';
if(a2!=0||k2!=0)
{
a=(a1+k1*b1)*b2;
b=b1*(a2+k2*b2);
if(b<0)
{
b=-b;
a=-a;
}
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
}
else
Cout(k1,a1,b1,s,k2,a2,b2);
return 0;
}
void gys(long long &a, long long &b)
{
long long i,j;
if(a<0)
j=-a;
else
j=a;
for(i=2;i<=j;i++)
{
if(a%i==0&&b%i==0)
{a=a/i;b=b/i;}
}
}
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2,long long k,long long a,long long b)
{
if(k1)
if(k1>0)
cout<<k1<<" ";
else if(a1!=0)
cout<<"(-"<<-k1<<" ";
else
cout<<"(-"<<-k1<<") ";
if(a1!=0)
{
if(a1<0)
{
if(k1<0)
cout<<-a1;
else
cout<<"(-"<<-a1;
}
else if(k1==0)
cout<<a1;
else
cout<<a1;
cout<<c;
if(k1<0||a1<0)
cout<<b1<<") ";
else
cout<<b1<<" ";
}
else if(k1==0)
cout<<0<<" ";
cout<<s<<" ";//
if(k2)
if(k2>0)
cout<<k2<<" ";
else if(a2!=0&&k2!=0)
cout<<"(-"<<-k2<<" ";
else if(k2!=0)
cout<<"(-"<<-k2<<") ";
if(a2!=0)
{
if(a2<0)
{ if(k2<0)
cout<<-a2;
else
cout<<"(-"<<-a2;}
else
cout<<a2;
cout<<c;
if(k2<0||a2<0)
cout<<b2<<") ";
else
cout<<b2<<" ";
}
else if(k2==0)
cout<<0<<" ";
cout<<"= ";
if(k)
if(k>0&&a==0)
cout<<k;
else if(k>0&&a!=0)
cout<<k<<" ";
else if(a!=0)
cout<<"(-"<<-k<<" ";
else
cout<<"(-"<<-k<<")";
if(a!=0)
{
if(a<0)
{ if(k<0)
cout<<-a;
else
cout<<"(-"<<-a;}
else
cout<<a;
cout<<c;
if(k<0||a<0)
cout<<b<<")";
else
cout<<b;
}
else if(k==0)
cout<<0;
}
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2)
{
if(k1)
if(k1>0)
cout<<k1<<" ";
else if(a1!=0)
cout<<"(-"<<-k1<<" ";
else
cout<<"(-"<<-k1<<") ";
if(a1!=0)
{
if(a1<0)
{
if(k1<0)
cout<<-a1;
else
cout<<"(-"<<-a1;
}
else
cout<<a1;
cout<<c;
if(k1<0||a1<0)
cout<<b1<<") ";
else
cout<<b1<<" ";
}
else if(k1==0)
cout<<0<<" ";
cout<<s<<" ";//
if(k2)
if(k2>0)
cout<<k2<<" ";
else if(a2!=0)
cout<<"(-"<<-k2<<" ";
else
cout<<"(-"<<-k2<<") ";
if(a2!=0)
{
if(a2<0)
{ if(k2<0)
cout<<-a2;
else
cout<<"(-"<<-a2;}
else
cout<<a2;
cout<<c;
if(k2<0||a2<0)
cout<<b2<<") ";
else
cout<<b2<<" ";
}
else if(k2==0)
cout<<0<<" ";//
cout<<"= ";
cout<<"Inf";
using namespace std;
void gys(long long &a, long long &b);
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2,long long k,long long a,long long b);
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2);
char c;
int main()
{
long long a1,a2,a, k1,k2,k,b1,b2,b;
char s;
cin>>a1>>c>>b1;
cin>>a2>>c>>b2;
gys(a1,b1);
gys(a2,b2);
k1=a1/b1;
a1=a1-k1*b1;
k2=a2/b2;
a2=a2-k2*b2;
s='+';
a=(a1+k1*b1)*b2+(a2+k2*b2)*b1;
b=b1*b2;
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
cout<<endl;
s='-';
a=(a1+k1*b1)*b2-(a2+k2*b2)*b1;
b=b1*b2;
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
cout<<endl;
s='*';
a=(a1+k1*b1)*(a2+k2*b2);
b=b1*b2;
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
cout<<endl;
s='/';
if(a2!=0||k2!=0)
{
a=(a1+k1*b1)*b2;
b=b1*(a2+k2*b2);
if(b<0)
{
b=-b;
a=-a;
}
k=a/b;
a=a-k*b;
gys(a,b);
//da yin
Cout(k1,a1,b1,s,k2,a2,b2,k,a,b);
}
else
Cout(k1,a1,b1,s,k2,a2,b2);
return 0;
}
void gys(long long &a, long long &b)
{
long long i,j;
if(a<0)
j=-a;
else
j=a;
for(i=2;i<=j;i++)
{
if(a%i==0&&b%i==0)
{a=a/i;b=b/i;}
}
}
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2,long long k,long long a,long long b)
{
if(k1)
if(k1>0)
cout<<k1<<" ";
else if(a1!=0)
cout<<"(-"<<-k1<<" ";
else
cout<<"(-"<<-k1<<") ";
if(a1!=0)
{
if(a1<0)
{
if(k1<0)
cout<<-a1;
else
cout<<"(-"<<-a1;
}
else if(k1==0)
cout<<a1;
else
cout<<a1;
cout<<c;
if(k1<0||a1<0)
cout<<b1<<") ";
else
cout<<b1<<" ";
}
else if(k1==0)
cout<<0<<" ";
cout<<s<<" ";//
if(k2)
if(k2>0)
cout<<k2<<" ";
else if(a2!=0&&k2!=0)
cout<<"(-"<<-k2<<" ";
else if(k2!=0)
cout<<"(-"<<-k2<<") ";
if(a2!=0)
{
if(a2<0)
{ if(k2<0)
cout<<-a2;
else
cout<<"(-"<<-a2;}
else
cout<<a2;
cout<<c;
if(k2<0||a2<0)
cout<<b2<<") ";
else
cout<<b2<<" ";
}
else if(k2==0)
cout<<0<<" ";
cout<<"= ";
if(k)
if(k>0&&a==0)
cout<<k;
else if(k>0&&a!=0)
cout<<k<<" ";
else if(a!=0)
cout<<"(-"<<-k<<" ";
else
cout<<"(-"<<-k<<")";
if(a!=0)
{
if(a<0)
{ if(k<0)
cout<<-a;
else
cout<<"(-"<<-a;}
else
cout<<a;
cout<<c;
if(k<0||a<0)
cout<<b<<")";
else
cout<<b;
}
else if(k==0)
cout<<0;
}
void Cout(long long k1,long long a1,long long b1,char s,long long k2,long long a2,long long b2)
{
if(k1)
if(k1>0)
cout<<k1<<" ";
else if(a1!=0)
cout<<"(-"<<-k1<<" ";
else
cout<<"(-"<<-k1<<") ";
if(a1!=0)
{
if(a1<0)
{
if(k1<0)
cout<<-a1;
else
cout<<"(-"<<-a1;
}
else
cout<<a1;
cout<<c;
if(k1<0||a1<0)
cout<<b1<<") ";
else
cout<<b1<<" ";
}
else if(k1==0)
cout<<0<<" ";
cout<<s<<" ";//
if(k2)
if(k2>0)
cout<<k2<<" ";
else if(a2!=0)
cout<<"(-"<<-k2<<" ";
else
cout<<"(-"<<-k2<<") ";
if(a2!=0)
{
if(a2<0)
{ if(k2<0)
cout<<-a2;
else
cout<<"(-"<<-a2;}
else
cout<<a2;
cout<<c;
if(k2<0||a2<0)
cout<<b2<<") ";
else
cout<<b2<<" ";
}
else if(k2==0)
cout<<0<<" ";//
cout<<"= ";
cout<<"Inf";
}
/**********************************************************/
注意每则运算结果输出后面不能带空格,除法输出之后不能有回车。 区分有理数的代数k,分母a两者为零和不为零时的输出格式,有理数为负数或正数时的输出格式。
例:
5/3 0/6
1 2/3 + 0 = 1 2/3
1 2/3 - 0 = 1 2/3
1 2/3 * 0 = 0
1 2/3 / 0 = Inf