#include <cstdio>
#include <algorithm>
#include <string>
#include <cctype>
#include <iostream>
using namespace std;
int cxs=0,ccs=0;//当前系数与常数
char sign(string s) {
for(int i=0; i<s.length(); i++) {
if(isalpha(s[i]))
return s[i];
}
return 0;
}
int main() {
string func;
char x;//代表未知数的字母
cin>>func;
int i,len=func.length(),k=0,cs=0,xs=0; //k记录等号位置
bool fu=false; //判断是否为负数
x=sign(func);
for(i=0; i<len; i++) { //等号前
if(isdigit(func[i])) {
ccs=ccs*10+func[i]-'0';
cxs=cxs*10+func[i]-'0';
}
else {
if(func[i]==x) { //如果当前是未知数
if(!isdigit(func[i-1])) //处理系数为1的情况
cxs=1;
if(fu) { //如果为负数
cxs=-cxs;
fu=false;
}
xs+=cxs;
} else { //如果当前不是未知数
if(fu) {
ccs=-ccs;
fu=false;
}
cs+=ccs;
}
ccs=cxs=0;
}
if(func[i]=='-')
fu=true;
if(func[i]=='=') { //注意这句的位置
k=i;
break;
}
}
fu=false;
for(i=k+1; i<len; i++) {
if(isdigit(func[i])) {
ccs=ccs*10+func[i]-'0';
cxs=cxs*10+func[i]-'0';
}
else {
if(func[i]==x) { //如果当前是未知数
if(!isdigit(func[i-1])) //处理系数为1的情况
cxs=1;
if(fu) { //如果为负数
cxs=-cxs;
fu=false;
}
xs-=cxs;
} else { //如果当前不是未知数
if(fu) {
ccs=-ccs;
fu=false;
}
cs-=ccs;
}
ccs=cxs=0;
}
if(func[i]=='-')
fu=true;
}
//只要最后一个不是数字cxs=ccs=0
if(ccs!=0){
if(fu)
ccs=-ccs;
cs-=ccs;
}
printf("%c=%.3lf",x,(-cs)/(double)xs);
return 0;
}