Pagini recente » Cod sursa (job #1799644) | Cod sursa (job #2577553) | Cod sursa (job #92693) | Cod sursa (job #1728106) | Cod sursa (job #1231648)
# include <bits/stdc++.h>
using namespace std;
ifstream fi("evaluare.in");
ofstream fo("evaluare.out");
char s[100005];
int i=0;
int check();
int termen()
{
int aux=0;
if (s[i]=='(') ++i,aux=check(),++i;
else
while ('0'<=s[i] && s[i]<='9') aux=aux*10+s[i]-'0',++i;
return aux;
}
int factor()
{
int aux=termen();
while (s[i]=='*' || s[i]=='/')
if (s[i]=='*') ++i,aux*=termen();
else ++i,aux/=termen();
return aux;
}
int check()
{
int aux=factor();
while (s[i]=='+' || s[i]=='-')
if (s[i]=='+') ++i,aux+=factor();
else ++i,aux-=factor();
return aux;
}
int main(void)
{
fi>>s;
fo<<check()<<'\n';
return 0;
}