#include <cstdio>
int main()
{
double a,b,c,d;
double value1,value2,value3,value4,value5,value6,value7,value8;
scanf("%lf %lf %lf %lf",&a,&b,&c,&d);
value1=a+c,value2=b+d;
value3=a-c,value4=b-d;
value5=a*c-b*d,value6=b*c+a*d;
value7=(a*c+b*d)/(c*c+d*d);
value8=(b*c-a*d)/(c*c+d*d);
//求和
if((int)(value1)!=0&&(int)(value2)!=0)
{
if((int)(value2)>0) {
if(b>=0&&d>=0) printf("(%.1f+%.1fi) + (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value1,value2);
else if(b<0&&d>=0) printf("(%.1f%.1fi) + (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value1,value2);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) + (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value1,value2);
else if(b<0&&d<0) printf("(%.1f%.1fi) + (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value1,value2);
}
else {
if(b>=0&&d>=0) printf("(%.1f+%.1fi) + (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value1,value2);
else if(b<0&&d>=0) printf("(%.1f%.1fi) + (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value1,value2);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) + (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value1,value2);
else if(b<0&&d<0) printf("(%.1f%.1fi) + (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value1,value2);
}
}
else if((int)(value1)==0&&(int)(value2)!=0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) + (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value2);
else if(b<0&&d>=0) printf("(%.1f%.1fi) + (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value2);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) + (%.1f%.1fi) = %.1fi\n",a,b,c,d,value2);
else if(b<0&&d<0) printf("(%.1f%.1fi) + (%.1f%.1fi) = %.1fi\n",a,b,c,d,value2);
}
else if((int)(value1)!=0&&(int)(value2)==0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) + (%.1f+%.1fi) = %.1f\n",a,b,c,d,value1);
else if(b<0&&d>=0) printf("(%.1f%.1fi) + (%.1f+%.1fi) = %.1f\n",a,b,c,d,value1);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) + (%.1f%.1fi) = %.1f\n",a,b,c,d,value1);
else if(b<0&&d<0) printf("(%.1f%.1fi) + (%.1f%.1fi) = %.1f\n",a,b,c,d,value1);
}
else
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) + (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d>=0) printf("(%.1f%.1fi) + (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) + (%.1f%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d<0) printf("(%.1f%.1fi) + (%.1f%.1fi) = 0.0\n",a,b,c,d);
}
//求减
if((int)(value3)!=0&&(int)(value4)!=0)
{
if((int)(value4)>0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) - (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value3,value4);
else if(b<0&&d>=0) printf("(%.1f%.1fi) - (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value3,value4);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) - (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value3,value4);
else if(b<0&&d<0) printf("(%.1f%.1fi) - (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value3,value4);
}
else
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) - (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value3,value4);
else if(b<0&&d>=0) printf("(%.1f%.1fi) - (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value3,value4);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) - (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value3,value4);
else if(b<0&&d<0) printf("(%.1f%.1fi) - (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value3,value4);
}
}
else if((int)(value3)==0&&(int)(value4)!=0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) - (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value4);
else if(b<0&&d>=0) printf("(%.1f%.1fi) - (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value4);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) - (%.1f%.1fi) = %.1fi\n",a,b,c,d,value4);
else if(b<0&&d<0) printf("(%.1f%.1fi) - (%.1f%.1fi) = %.1fi\n",a,b,c,d,value4);
}
else if((int)(value3)!=0&&(int)(value4)==0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) - (%.1f+%.1fi) = %.1f\n",a,b,c,d,value3);
else if(b<0&&d>=0) printf("(%.1f%.1fi) - (%.1f+%.1fi) = %.1f\n",a,b,c,d,value3);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) - (%.1f%.1fi) = %.1f\n",a,b,c,d,value3);
else if(b<0&&d<0) printf("(%.1f%.1fi) - (%.1f%.1fi) = %.1f\n",a,b,c,d,value3);
}
else
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) - (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d>=0) printf("(%.1f%.1fi) - (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) - (%.1f%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d<0) printf("(%.1f%.1fi) - (%.1f%.1fi) = 0.0\n",a,b,c,d);
}
//求乘
if((int)(value5)!=0&&(int)(value6)!=0)
{
if((int)(value6)>0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) * (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value5,value6);
else if(b<0&&d>=0) printf("(%.1f%.1fi) * (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value5,value6);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) * (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value5,value6);
else if(b<0&&d<0) printf("(%.1f%.1fi) * (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value5,value6);
}
else
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) * (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value5,value6);
else if(b<0&&d>=0) printf("(%.1f%.1fi) * (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value5,value6);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) * (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value5,value6);
else if(b<0&&d<0) printf("(%.1f%.1fi) * (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value5,value6);
}
}
else if((int)(value5)==0&&(int)(value6)!=0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) * (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value6);
else if(b<0&&d>=0) printf("(%.1f%.1fi) * (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value6);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) * (%.1f%.1fi) = %.1fi\n",a,b,c,d,value6);
else if(b<0&&d<0) printf("(%.1f%.1fi) * (%.1f%.1fi) = %.1fi\n",a,b,c,d,value6);
}
else if((int)(value5)!=0&&(int)(value6)==0)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) * (%.1f+%.1fi) = %.1f\n",a,b,c,d,value5);
else if(b<0&&d>=0) printf("(%.1f%.1fi) * (%.1f+%.1fi) = %.1f\n",a,b,c,d,value5);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) * (%.1f%.1fi) = %.1f\n",a,b,c,d,value5);
else if(b<0&&d<0) printf("(%.1f%.1fi) * (%.1f%.1fi) = %.1f\n",a,b,c,d,value5);
}
else
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) * (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d>=0) printf("(%.1f%.1fi) * (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) * (%.1f%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d<0) printf("(%.1f%.1fi) * (%.1f%.1fi) = 0.0\n",a,b,c,d);
}
//printf("%.1f %.1f\n",value7,value8);
//求除
if((value7< -0.05||value7>0.05)&&(value8< -0.05||value8>0.05))
{
if((value8)>0.00)
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) / (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value7,value8);
else if(b<0&&d>=0) printf("(%.1f%.1fi) / (%.1f+%.1fi) = %.1f+%.1fi\n",a,b,c,d,value7,value8);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) / (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value7,value8);
else if(b<0&&d<0) printf("(%.1f%.1fi) / (%.1f%.1fi) = %.1f+%.1fi\n",a,b,c,d,value7,value8);
}
else
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) / (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value7,value8);
else if(b<0&&d>=0) printf("(%.1f%.1fi) / (%.1f+%.1fi) = %.1f%.1fi\n",a,b,c,d,value7,value8);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) / (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value7,value8);
else if(b<0&&d<0) printf("(%.1f%.1fi) / (%.1f%.1fi) = %.1f%.1fi\n",a,b,c,d,value7,value8);
}
}
else if((value7<=0.05&&value7>= -0.05)&&(value8>0.05||value8< -0.05))
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) / (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value8);
else if(b<0&&d>=0) printf("(%.1f%.1fi) / (%.1f+%.1fi) = %.1fi\n",a,b,c,d,value8);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) / (%.1f%.1fi) = %.1fi\n",a,b,c,d,value8);
else if(b<0&&d<0) printf("(%.1f%.1fi) / (%.1f%.1fi) = %.1fi\n",a,b,c,d,value8);
}
else if((value7>0.05||value7< -0.05)&&(value8<=0.05&&value8>= -0.05))
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) / (%.1f+%.1fi) = %.1f\n",a,b,c,d,value7);
else if(b<0&&d>=0) printf("(%.1f%.1fi) / (%.1f+%.1fi) = %.1f\n",a,b,c,d,value7);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) / (%.1f%.1fi) = %.1f\n",a,b,c,d,value7);
else if(b<0&&d<0) printf("(%.1f%.1fi) / (%.1f%.1fi) = %.1f\n",a,b,c,d,value7);
}
else
{
if(b>=0&&d>=0) printf("(%.1f+%.1fi) / (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d>=0) printf("(%.1f%.1fi) / (%.1f+%.1fi) = 0.0\n",a,b,c,d);
else if(b>=0&&d<0) printf("(%.1f+%.1fi) / (%.1f%.1fi) = 0.0\n",a,b,c,d);
else if(b<0&&d<0) printf("(%.1f%.1fi) / (%.1f%.1fi) = 0.0\n",a,b,c,d);
}
return 0;
}