#include<bits/stdc++.h>
using namespace std;
double ln,rn,lx,rx,a=0;
string s;
int main()
{
cin>>s;
int f1=0,f2=1,flag=-1;
char r,cr;
for (int i=0;i<s.size();++i)
{
r=s[i];
if(r>'9'||r<'0')
{
if (r!='+'&&r!='-'&&flag==-1&&r!='=')
{
flag=i;
break;
}
}
}
char ch=s[flag];
for (int i=0;i<s.size();++i)
{
r=s[i];
cr=s[i-1];
if (s[i]=='=')
{
if (s[i-1]>'9'||s[i-1]<'0')
{
lx+=f2*a;
a=0;
}
else
{
ln+=f2*a;
a=0;
}
f1=1;
f2=1;
continue;
}
if (!f1)
{
if (s[i]=='-')
{
if (s[i-1]>'9'||s[i-1]<'0')
{
if ((s[i-2]!='='&&s[i-2]!='+'&&(s[i-2]>'9'||s[i-2]<'0')&&s[i-2]!='-')&&i==1&&i>=1)
a=1;
lx+=f2*a;
a=0;
}
else
{
ln+=f2*a;
a=0;
}
f2=-1;
continue;
}
if (s[i]=='+')
{
if (s[i-1]>'9'||s[i-1]<'0')
{
if ((s[i-2]!='='&&s[i-2]!='+'&&(s[i-2]>'9'||s[i-2]<'0')&&s[i-2]!='-')||i==2)
a=1;
lx+=f2*a;
a=0;
}
else
{
ln+=f2*a;
a=0;
}
f2=1;
continue;
}
}
else
{
if (s[i]=='-')
{
if (s[i-1]>'9'||s[i-1]<'0')
{
rx+=f2*a;
a=0;
}
else
{
rn+=f2*a;
a=0;
}
f2=-1;
continue;
}
if (s[i]=='+')
{
if (s[i-1]>'9'||s[i-1]<'0')
{
rx+=f2*a;
a=0;
}
else
{
rn+=f2*a;
a=0;
}
f2=1;
continue;
}
}
if (s[i]<'0'||s[i]>'9')continue;
a=a*10+s[i]-'0';
}
if (r>'9'||r<'0')
{
rx+=f2*a;
a=0;
}
else
{
rn+=f2*a;
a=0;
}
lx-=rx;
rn-=ln;
lx=rn/lx;
if (lx==-0) lx=0;
cout<<ch<<'=';
printf("%.3lf",lx);
return 0;
}
```cpp