Pagini recente » Cod sursa (job #2588904) | Cod sursa (job #407810) | Cod sursa (job #2154031) | Cod sursa (job #841783) | Cod sursa (job #2033198)
#include <bits/stdc++.h>
using namespace std;
#define LMAX 100005
char v[LMAX];
int poz;
int Sum();
int Nr(){
int n=0;
if(v[poz]=='('){
++poz;
n=Sum();
++poz;
return n;
}
while(v[poz]>='0'){
n=n*10+v[poz]-'0';
++poz;
}
return n;
}
int Prod(){
int P=Nr();
while(v[poz]=='/'||v[poz]=='*'){
if(v[poz]=='/'){
++poz;
P/=Nr();
}
else{
++poz;
P*=Nr();
}
}
return P;
}
int Sum(){
int S=Prod();
while(v[poz]=='-'||v[poz]=='+'){
if(v[poz]=='-'){
++poz;
S-=Prod();
}
else{
++poz;
S+=Prod();
}
}
return S;
}
int main(){
freopen("evaluare.in","r",stdin);
freopen("evaluare.out","w",stdout);
scanf("%s",v);
printf("%d\n",Sum());
}